2009-12-21 37 views
1

我有一个关于使用导航控制器和tabBarController在一起的查询。NavigationController和TabBarController在一起问题

我会详细解释一下。

我的应用程序的流程如下,

Class A (Navigation starts from here) 
--Class B (Pushed on navigation from A) 
----Class C (Pushed on navigation from B) 
------Tab P 
------Tab Q 
------Tab R (I want navigation here) 
------Tab S (I want navigation here) 

我的C级有四个标签一个TabBarController。 现在两个选项卡需要导航。

我为两个选项卡(R和S)创建了两个单独的导航控制器。但是当我使用它时,屏幕上有两个导航栏。 本身和其他根导航栏之一。

我需要隐藏根目录导航栏吗?怎么做? 还有别的办法吗?

请在这方面帮助我。

在此先感谢。

回答

2

该流程听起来不那么用户友好,在导航深入两层后,用户需要一些详细的设置,而不是一个全新的4制表符屏幕。

建议,斯坦福大学有一个完整的iPhone开发课程免费提供iTunesU。它由Apple员工在NavigationController + TabBarController课程中详细讲述了您应该如何构建层次结构。

+0

+1对于斯坦福视频链接,欢呼! – Garry 2010-01-01 17:27:31

0

还有一件事要注意如果你隐藏应用程序的导航栏,在类C中,你将无法以正常的方式去以前的类,当然它不会那么多的用户友好。

通过您可以隐藏导航栏的方式..

[self.navigationController setNavigationBarHidden:Yes]; 
2

你可以把一个TabBarController一个NavBarController里面,但你不应该把它周围的其他方法,根据官方Apple文档。

也就是说,当你从你的NavBarController的屏幕上选择它时,你可以用TabBarController替换根视图控制器来破解它。这会隐藏导航栏。但是,当然你不会有一堆导航控制器,你可以方便地弹出,而且你没有导航栏,顶部有一个按钮可以返回。

如果要在NavBarController堆栈中放置Tab栏,则可能需要重新考虑导航层次结构。

+2

我想其他方法。我们可以将导航控制器放入tabbarcontroller。 – Ideveloper 2011-05-03 11:59:02

相关问题