2013-03-21 67 views
1

我想從UITabBarControler推送視圖。我的應用程序的層次結構是這樣的:如何在UITabBarController中推送UIViewController

的UINavigationController - > UIView的 - >的UITabBarController

我有一個UITabBarController有3個標籤。在第一個標籤上,我添加了一個UITableView。我該如何做到這一點,以便表中的單元格選擇無需從選項卡控件導航即可推入另一個視圖?

+0

你指從tableview中這是一個選項卡內推的詳細視圖酒吧?您準確地使用了 – 2013-03-21 16:40:30

+0

,但標籤欄已在導航控件中。 – Mihin 2013-03-21 16:46:30

回答

1

如果您確實需要在標籤欄界面內推導航控制器類型,您需要在導航界面內部的標籤欄界面。

儘管您最簡單的解決方案可能是重新考慮您的界面。

+0

任何教程或使用該代碼的代碼的一部分,我可以完成我的工作 – Mihin 2013-03-21 16:36:03

0

像這樣:

How to handle UINavigationControllers and UITabBarControllers iOS 6.1

這是一個更復雜的版本,但看看標籤欄控制器,它是與它的包含viewControllers關係。

基本上你不希望你的tabBarController被嵌入到那個導航控制器中。相反,每個包含viewController想要推動應該嵌入在它自己的導航控制器。所以在你的情況下,你至少會爲你的第一個標籤的tableViewController做到這一點。

3

你的問題是你正在做的安排。

您正在使用UINavigationController -> UIView -> UITabBarController,所以UITabBarControllerUINavigationController的子視圖。當您瀏覽時,您彈出的視圖是從導航控制器中刪除,因此其所有內容(包括UITabBarController)都將消失。

您結構需要是這樣的:

UITabBarController -> UINavigationController -> UIView,這意味着每每一個需要它的標籤一個UINavigationController

例如,如果需要使用兩個標籤內部推,該結構應該是這樣的:

UITabBarController

| --> UINavigationController 1 --> UIView 1 --> (push segue) --> UIView 1B 

| --> UINavigationController 2 --> UIView 2 --> (push segue) --> UIView 2B 
+0

感謝格式化,我不知道如何去做。 – 2013-05-17 15:41:17

相關問題