我正在將iPhone應用程序轉換爲在iPad上工作。在這種情況下,用戶界面是使用界面構建器創建的。根控制器的接口(在索引0處),在此由佈局選項卡控制器&導航控制器的:UISplitViewController - willShowViewController未觸發
- 標籤控制器
- 導航控制器1
- 導航控制器2
- 導航控制器3
我一直在實施這件事。作爲第一步,當我設置Tab Controller &導航控制器1時,一切正常。 willHideViewController & willShowViewController正常工作。我的界面正確地從SplitView切換到Popover。當我添加導航控制器2時,willHideViewController & willShowViewController永遠不會觸發&無論iPad在模擬器中的方向如何,我總能看到Popover控制器。
當我添加第二個導航控制器時,是否還有其他需要在界面構建器中關聯以使界面正常工作?
我使用由Xcode 4生成的splitView模板作爲將iPad支持添加到我的項目的基礎。在這個splitView模板中,處理willShowViewController/willHideViewController的委託是DetailViewController。我相信這個委託是正確實現的,因爲當RootController只不過是一個tabController而已經實現了一個標籤的時候,所有東西都能正常工作。當我向RootController添加第二個選項卡時,當事情停止工作。當我刪除額外的選項卡時,所有事情都會重新開始。 – russes
順便說一句,有3個導航控制器,每個標籤欄中的標籤。選擇標籤後,該標籤的導航控制器最終會推送視圖控制器以最終選擇一個項目。所以,我很確定我正確地使用控制器。該實現可以像iPhone應用程序一樣正常工作。我只看到問題,當我嘗試使iPhone界面正常工作的splitView。 – russes
另外一點信息:導致(根)splitView出現問題的選項卡是使用Stanford課程資料中提供的CortDataTableViewController類實現核心數據表的選項卡。當這個類被添加到筆尖時,事情就會失敗。刪除它,東西正常工作。 – russes