2013-07-24 37 views
0

我創建了一個CGRect爲x = 160,y = 186,width = 1600,height = 380的視圖(稱爲masterView)。這個視圖包含5個子視圖,每個iphone屏幕寬(360)。UIScrollview從第3頁5開始,而不是第1頁共5頁

我已經建立了一個帶分頁的滾動視圖,以便瀏覽這個視圖。當我運行應用程序時,出現第3頁,共5頁,我可以在5 - 5 + 2空白頁之間自由翻頁,但我無法翻頁到頁面1 & 2.因此,出於某種原因,masterView被推到左邊由2個屏幕寬度。如何糾正其位置,以便應用程序從第1頁開始?

這是我的第一個應用程序。

我已經把下面的代碼在視圖控制器的viewDidLoad:

CGRect screenRect = CGRectMake(0, 0, 320, 380); 

UIScrollView *scrollView2 = [[UIScrollView alloc] initWithFrame:screenRect]; 
[scrollView2 setDelegate:self]; 

CGRect bigRect = CGRectMake(0, 186, 1600, 380); 
[scrollView2 setContentSize:bigRect.size]; 
[scrollView2 setPagingEnabled:YES]; 

[scrollView2 addSubview:masterview]; 
[[self view] addSubview:scrollView2]; 
+0

你的子視圖在'scrollView2'中的位置是什麼? –

回答

1

檢查出使用UIScrollViewUIPageControl這個優秀的教程。它應該讓你去。

http://www.iosdevnotes.com/2011/03/uiscrollview-paging/

最重要的一點是在viewDidLoad

for (int i = 0; i < colors.count; i++) { 
    CGRect frame; 
    frame.origin.x = self.scrollView.frame.size.width * i; 
    frame.origin.y = 0; 
    frame.size = self.scrollView.frame.size; 

    UIView *subview = [[UIView alloc] initWithFrame:frame]; 
    subview.backgroundColor = [colors objectAtIndex:i]; 
    [self.scrollView addSubview:subview]; 
    [subview release]; 
} 

儘管此代碼示例使用ARC,它仍然適用。請注意,每個子視圖的框架被頁碼self.scrollView.frame.size.width * i抵消。

祝你好運。

相關問題