2016-11-09 64 views

回答

1

,而不是下面的組織(你目前正在使用):

NavController -> TabBarController -> ViewControllerA 
            \ 
            -> ViewControllerB 

你必須做到以下幾點:

TabBarController -> NavControllerA -> ViewControllerA 
       \ 
        -> NavControllerB -> ViewControllerB 

UITabBarController S的關係永遠是根本觀點。每個子視圖控制器都需要自己的導航控制器來實現您所需的導航欄+標籤欄效果。這裏的結構應該是什麼樣子的例子:

Storyboard laid out with TabBarController at the root.

,作爲添加導航項/標題到每個視圖控制器一旦你做到了以上情況,確保拖動導航項目在每個視圖控制器。你可以找到在實用工具底部的對象庫的導航項目查看:

Navigation Item in the Object Library

+0

當我第一次學習如何嵌入到一個的UITabBarController,有人告訴我,我必須有NavController了前面。請參閱http://stackoverflow.com/q/40509479/7100251 – Allie

+0

這可能在某些情況下有效,但最終會遇到奇怪的錯誤(如您遇到的錯誤)。 UINavigationControllers被設計爲嵌入在UITabBarControllers中,而不是其他方式。有一個類似的問題和答案在這裏:http://stackoverflow.com/questions/27422054/how-to-implement-tab-bar-controller-with-navigation-controller-in-right-way – Mark

+0

我試過這種方法,但它只是從我的視圖控制器的頂部切斷更多。 – Allie

相關問題