2013-12-13 28 views
2

我在橫向模式下調整UIPageViewController的大小時遇到​​問題。如何在橫向上調整UIPageViewController的大小

這裏是我的情況:

我有一個UIViewController其中有一個scrollview。 我以編程方式在scrollview上添加了UIPageViewController,它正確顯示了每個頁面中的所有視圖控制器。 當我將設備方向更改爲橫向時,我正確更改了scrollview的內容大小,但PageViewController僅顯示了其內容的一半。你能幫我解決這個問題嗎?

謝謝, Anand。

回答

3

看起來您要麼沒有獲得設備的正確方向,要麼嘗試將其設置在viewDidLoad函數中。以下代碼應該正確地將頁面視圖控制器的框架設置爲當前方向。

- (void)viewWillLayoutSubviews { 
    CGRect screenFrame = [[UIScreen mainScreen] applicationFrame]; 

    if (UIInterfaceOrientationIsLandscape([[UIApplication sharedApplication] statusBarOrientation])) { 
     screenFrame = CGRectMake(0, 0, screenFrame.size.height, screenFrame.size.width); 
    } 

    //Please don't forget to replace _myPageViewController with your variable 
    _myPageViewController.frame = screenFrame; 
} 

請注意,代碼正從viewWillLayoutSubviews 函數調用。

+0

我刪除了我的應用程序中的滾動視圖,並將其替換爲視圖。 所以目前我的viewcontroller有一個uisegmented控件和一個uview。 uview有一個pageviewcontroller。我仍然無法在橫向模式下調整瀏覽量控制器。 請幫幫我。
和我修改您的viewWIllLayoutSubViews如下,以適應我的需要: self.subView.frame = screenFrame; [[self.pageController view] setFrame:[[self subView] bounds]]; –

+0

我修改了你的viewWillLayoutSubViews以適應我的目的,現在它可以工作。非常感謝。 –

+0

打破頭部3小時後.....終於得到了正確的解決方案。謝謝你這麼多:) –

相關問題