我正在编写一个使用底部的UITabBarController的应用程序。
层次
- Page 1 - - SubPage 1 - - SubPage 2 - - SubPage 3 - Page 2 - Page 3
第1页包含一个包含多个项目的网格,选中后将显示选择的子页面 在子页面上,我将TabBarController的Tabs替换为所有子页面,并希望在导航栏中显示后退链接。
我以编程方式创建tabBar
目前,我使用tabBarController作为rootViewController初始化navigationController
这似乎有效,但我无法改变NavigationBar上的任何内容,设置标题无效,按钮不会出现。
我做错了什么? 或者有更好的方法来达到我想要的目的吗?
我用ARC(仅限iPad)
定位iOS5答案 0 :(得分:4)
您可以通过设置子标题来设置父导航控制器的标题。您需要设置tabbar-controller的标题:
myTabBarController.title = @"Page 1";
您还可以在子视图中设置导航栏的按钮,因为栏的内容取决于当前的可见视图:
UIBarButtonItem *myItem = [[UIBarButtonItem alloc] initWithTitle:@"back" style:UIBarButtonItemStylePlain target:self action:@selector(myBackAction:)];
myTabBarController.navigationItem.leftBarButtonItem = myItem;
请记住,点击标签上的项目后更改标签栏的内容被视为糟糕的用户体验。可能还有其他更好的方法可以达到同样的效果。