我正在iphone中制作应用程序,其中我有4个tabbars&在其中一个选项卡中,我在第二个视图中有4个视图,它需要隐藏标签栏。我可以使用正在推送的Viewcontroller的initWithNib方法中的setHidesBottomBarWhenPushed:YES来隐藏标签栏。但是当导航到屏幕3时,使用“否”调用相同的方法不会使标签栏出现。任何想法?
答案 0 :(得分:8)
约翰史密斯是对的。该示例的网址为:http://developer.apple.com/iphone/library/samplecode/TheElements/index.html
执行此操作的代码位于AtomicElementViewController.m中,实现此效果的行位于init方法中:
self.hidesBottomBarWhenPushed = YES;
答案 1 :(得分:7)
我有同样的问题来显示或隐藏使用UITableViewController自定义类的标签栏控制器。不知何故,通过使用以下代码,无法隐藏标签栏控制器:
- (void) viewDidLoad {
self.hidesBottomBarWhenPushed = YES;
}
对于带有segue的故事板,initWithStyle:方法不会被调用。
相反,我必须覆盖该属性才能使其正常工作:
- (BOOL) hidesBottomBarWhenPushed {
return YES;
}
我的情况是iOS 5.1的故事板和segue推送到下一个视图(我想隐藏标签栏控制器)。
答案 2 :(得分:1)
看一下Apple的Elements项目。当您查看单个元素时,它们会隐藏和取消隐藏标签栏。
答案 3 :(得分:1)
在将第3个视图推入堆栈之前,将第2个视图的hidesBottomBarWhenPushed设置为NO。