在我的iPhone應用程序中,我有一個帶有兩個子視圖的UIViewController:一個主UIView(讓我們稱之爲mainView)和一個輔助UIView(我們稱之爲secondView),它是通常隱藏但有時會顯示(例如用戶設置)。在我的UIViewController中,self.view被設置爲mainView。當用戶切換到子視圖時,我打電話[self.view addSubview:secondView]
,當用戶切換回主UIView時,我打電話[secondView removeFromSuperview]
。UIView子視圖不是自動旋轉或自動調整大小的iPad
有其本人目前處理兩個問題:
- 當用戶旋轉iPhone或iPad,主要的UIView(MAINVIEW)autorotates妥善及其所有UI項目遵循其自動調整大小規則,我已經在Interface Builder中設置好了。但是,當顯示輔助UIView(secondView)並且iPhone或iPad旋轉後,其所有UI項目都不會遵循其自動調整規則。我發現,當我設置
self.view = secondView
,然後旋轉設備時,視圖正確旋轉。 - 在iPad中,當我使用
[self.view addSubview:secondView]
拉起第二個視圖時,它不會調整大小以填充整個屏幕,就像主版本的UIView已調整大小。所以我最終得到了一個屏幕,它在後臺顯示mainView UIView,在左上角顯示secondView UIView,而不佔用整個屏幕。
我的直覺告訴我,這兩個問題是相互關聯的。有沒有其他人遇到這種類型的問題與輔助UIViews,他們添加到他們的UIViewControllers使用addSubview:
?
我在與iOS6的iPhone上有類似的經歷。我有一個通常隱藏的子視圖,只要堅持以肖像爲導向,即使其他一切都是以景觀爲導向的。它就像從來沒有理解它是視圖層次結構的一部分,所有視圖都旋轉了。 – 2013-06-19 18:05:42