2011-09-30 36 views
1

我有一個rootViewController這是一個UITabBarController。 A UIToolBar存在於該控制器中,因爲它具有對應用程序全局的SearchBar。在某些選項卡中,應該有特定的UIBarButtonItemsUISegmentedControl以及searchBar。在其他選項卡中,工具欄中應該沒有任何內容,只是標題。使用UIToolBar和UITabBarController查看層次結構

什麼是佈置視圖的好方法?目前基於選擇了哪個選項卡,rootViewController中的主工具欄可以原樣使用,可以添加UISegmentedControl,完全隱藏並替換爲具有自己的工具欄的另一個viewController等。對我而言,我正在考慮在其自己的選項卡中存在的每個viewController都可以擁有自己的工具欄,並引用全局功能vs隱藏/顯示不同的工具欄。

對不起,如果這是一個複雜的問題。只是想知道人們是否有這方面的經驗。謝謝。

回答

0

簡短的回答是,沒有一個真正的好方法來做到這一點。如果您使用的是標籤欄控制器,則標籤欄將始終在屏幕底部可見。大概每個標籤都是一個UINavigationController,頂部有一個導航欄。在這個佈局中沒有合適的地方放置工具欄按鈕。

更好的設計可能是放棄UITabBarController並使用UINavigationController作爲根視圖控制器。您可以爲應用程序的每個視圖提供一個包含項目的表視圖,而不是標籤。然後你將有空間在屏幕底部的工具欄。實際上,UINavigationController支持在底部有一個工具欄。您只需覆蓋toolbarItems屬性即可返回應出現在每個子視圖控制器中的項目。您只需在UINavigationController上設置toolbarHiddenNO,即可開始使用。