2012-10-30 99 views
1

我有一個應用程序,它有兩個主要的控制器:一個GJClientSelectionController,它只是一個普通的UIViewController,其中包含一個滾動視圖,以及一個CGClientDetailController,它是一個自定義的UIViewController,用於管理每個自定義標籤欄和控制器。隨着用戶在應用程序的每個部分之間移動,我在控制器之間切換。在UIViewControllers之間切換的正確設計模式是什麼?

問題是,我不確定正確的設計模式是什麼。在iOS6之前,我只是將每個設置爲窗口的rootViewController屬性的值。它運行良好,但如果設備旋轉,然後切換控制器,則新顯示的控制器將不會收到旋轉通知,並且在用戶旋轉設備之前將出現錯誤。我也在嘗試使用一個常規的UIViewController,我稱其爲masterController,並將其設置爲rootViewController,然後將其他兩個控制器添加爲childViewControllers。唯一的是,如果我隱藏了childViewController的視圖,它仍然會錯過輪換通知。

在UIViewControllers之間移動的正確設計模式是什麼?當我切換到控制器及其視圖時,如何確保控制器的正確方向?

回答

0
+0

這並不是我在問什麼。 – GoldenJoe

+0

對不起,我想我發現了另一篇文章可能會幫助你解決這個問題。請參閱上面的鏈接。 – danielM

+0

感謝您的幫助,但事實並非如此。基本上,視圖應該處理任何方向。我遇到的斷開連接是,當我添加一個新的UIViewController到[window rootViewController]層次結構中時,新控制器不知道現有的旋轉,並且默認情況下會呈現肖像。如果您在添加設備後旋轉設備,它會正確地採用新的方向,但無論出於何種原因,iOS似乎都不會通知控制器最初添加設備時的當前方向。 – GoldenJoe

相關問題