tcu*_*rdt 5 iphone cocoa-touch
我正在使用UINavigationController(旁注:在UITabBar中),默认情况下,它在顶部提供了一个UINavigationBar.如果我通过IB隐藏了这个栏,那么这个栏不仅对于根UIViewController而且对于我推入堆栈的所有控制器都消失了.让我没有(自动)方式回弹.
那么如何才能在根UIViewController上隐藏UINavigtionBar.临时打开/关闭"navigationBarHidden"不起作用,因为动画看起来很尴尬.
还有其他想法吗?
对我来说,隐藏UInavigationBar后避免空格的最简单方法是隐藏或显示你的UInaviagtionBar如下.
-(void)viewWillDisappear:(BOOL)animated
{
[super viewDidDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:YES];
}
-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:YES];
}
Run Code Online (Sandbox Code Playgroud)
语法:self.navigationController.navigationBarHidden = YES;我总是有空格.
我实际上碰到了这个问题,我是如何解决它的是UINavigationCOntroller委托,我基本上有一个UINavigationController子类并使它成为自己的委托,然后我实现了该方法
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
{
if([viewController isKindOfClass: [SomeClass class]])
[self setNavigationBarHidden: NO];
else
[self setNavigationBarHidden: YES];
}
Run Code Online (Sandbox Code Playgroud)
所以你问它是哪一个类,如果它需要有一个导航栏你显示它,这对我很有用...希望它有帮助
| 归档时间: |
|
| 查看次数: |
5415 次 |
| 最近记录: |