2010-05-17 130 views
0

我想在导航控制器内部安装TabBar控制器。因此,当在第一个导航控制器上选择一个项目时,它将TabBar推入视图。第一个选项卡上的此选项卡内是另一个导航控制器。导航(c)中的Tabbar(c)中的导航(控制器)

但是我只想要一个导航栏。

我想出了2种方式,但不知道哪种方式更好(即更容易接受等)?

1)第一个导航控制器实际上并不是导航控制器,但对用户来说,它看起来像一个。因此,当在表格视图中选择一个单元格时,第一个navC的视图将从超级视图中移除,并添加TabBarC的视图,则动画必须手动完成。

2)第一个NavC实际上是一个NavC,当一个项目被选中并且TabBar被推送到屏幕上时,第一个NavC的导航栏被隐藏,因此第一个标签的导航栏是屏幕上唯一的导航栏。

回答

1

我不认为这是一个好主意。该框架不支持将导航栏控制器作为导航控制器中的根视图控制器。 (这句话太多“控制器”)。

从文档:

initWithRootViewController:

初始化并返回一个新创建的导航控制器。

- (id)initWithRootViewController:(UIViewController *)rootViewController

参数

rootViewController

驻留在导航堆栈的底部的视图控制器。 该对象不能是UITabBarController类的实例。

(斜体重点煤矿)

+0

所以它必须是一个选项,其中tabbarController不在navController – 2010-05-17 16:38:56