2010-12-14 54 views
0

好的我在開發iPad應用程序時遇到了一個有趣的問題。iPad佈局僅在發佈時有所不同

當應用程序以縱向模式啓動時,佈局按預期工作。我旋轉iPad和旋轉工作正常。

當應用程序以橫向模式啓動時,會出現額外的空白區域,並且佈局不能按預期工作。但是當我將應用程序旋轉到縱向時,它旋轉得很好。當我將其旋轉回風景時,它也很好地展現出來。

什麼可能導致此問題?有問題的視圖控制器是一個包含UINavigationController的視圖控制器(我必須添加到標題中)。我不知道它是否與UINavigationController。

回答

0

好了,所以什麼在我的應用程序奇怪的是,當標籤切換控制器標籤回被作爲時髦的視圖佈局將變得正確。所以,我添加了一個黑客來切換主窗口的makeKeyAndVisible之前的選項卡。

我嘗試了你的建議WrightsCS。它沒有工作的真正原因是因爲我在頁面的子視圖中加載了UINavigationController的視圖,所以我沒有真正控制混亂的佈局。導航控制器的頂部欄加載比本應低一些。

0

您的視圖在啓動時期待肖像模式。在你的視圖控制器中,你需要讓它知道尋找方向,並加載相應的視圖。

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 
    if(((interfaceOrientation == UIInterfaceOrientationLandscapeLeft) || 
     (interfaceOrientation == UIInterfaceOrientationLandscapeRight))){ 

     self.view = landscape; 

    }else if(((interfaceOrientation == UIInterfaceOrientationPortrait) || 
       (interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown))){ 

     self.view = portrait; 
    } 

    return YES; 
} 
+0

它只有1個ViewController和視圖。在橫向和縱向之間切換時,我不會加載另一個視圖。 – Min 2010-12-14 23:27:41

+0

然後,您需要檢查負載方向並相應地調整對象框架。更簡單的方法是在1個控制器上有2個視圖(在IB中設置)。 1個稱爲風景的視圖,另一個稱爲肖像,然後使用我添加到我的答案中的代碼。在幾個項目上,我的工作就像一個魅力。 – WrightsCS 2010-12-14 23:30:29

+0

我會給這個鏡頭。 – Min 2010-12-15 15:09:31