設計要求:導航控制器內的標籤欄控制器,如何將新的viewcontroller推送到tabcontroller?
- 顯示項目的列表,用戶可以從
- 挑挑選具有某個項目之後,帶給用戶一個返回按鈕的新視圖。新視圖應該包含底部沒有出現在第一個屏幕中的選項卡列表
- 單擊選項卡中的項目時,將出現一個帶有後退按鈕的新屏幕,並且選項卡仍應在底部可見。
- 單擊一個選項卡應使用戶將層次結構備份到#2。不到第一個屏幕。
我曾嘗試以下結構:
UINavigationController
UIViewController
與UITableView
UIViewController
與UITabBar
(喜歡這裏http://www.wiredbob.com/2009/04/iphone-tweetie-style-navigation.html)
,也
UINavigationController
UIViewController
與UITableView
UITabbarController
這兩種情況都很好地工作顯示UITabBar
,但是當我在一個選項卡中單擊一個項目,推動新UIViewController
然後,底部的標籤消失。我希望這些標籤保留在UITabBarController
標籤頁內發生的所有推送UIViewControllers
的位置。
一個相關的問題是這樣的一個,但它不推viewcontrollers的處理問題選項卡中: Tab bar controller inside a navigation controller, or sharing a navigation root view
我需要改變rootcontroller到UITabController
?任何人都實現了這個?
但我不希望在第一個屏幕的選項卡。我的第一個屏幕是項目列表(例如Tweetie中的帳戶)。當點擊一個項目時,我推一個顯示標籤的新控制器。這是主要的問題,因爲它有點「不標準」,但是Tweetie在AppStore中提供了這個功能。 –
這是一樣的。您只需以編程方式創建您的UITabBarController,然後使用rootViewController爲每個導航項初始化UINavigationController。控制器(這是你的實際控制器),並設置標籤欄控制器的'viewControllers'屬性與你創建的導航控制器的陣列... – graver
哦,我不知道我是如何錯過了那一個。感謝您指出!我現在有兩個導航頭,但至少可以工作。我只是拉一些魔術,以顯示正確的:-) –