[英]Hide navigationBar, Show navigationBar
我遇到了一个问题。 首先,来自AppDelegate的一些代码。
- (void)HideMainNavigationBar{
navigCtrl.navigationBarHidden = YES;
}
- (void)ShowMainNavigationBar{
navigCtrl.navigationBarHidden = NO;
}
navigCtrl是我的导航控制器。 在我的其他View Controller中,我需要隐藏我的navigationBar,然后将其显示以正确显示。
- (void) moviePlayerWillExitFullScreen:(id)sender {
NSLog(@"exitfullscreen");
AppDelegate *ptr = [AppDelegate SharedAppDelegate];
[ptr HideMainNavigationBar];
[ptr ShowMainNavigationBar];
}
之后,我看到了“返回”按钮,而不是自定义的tabBarButton:
点击ob后退按钮后,它消失了,并且使用自定义按钮再次看到了我的navigationBar。 可以,在iOS 5.1中的iOS 5.1中检测到此“错误”。
这让我发疯,请帮助。
PS我知道,我可以使用:
self.navigationController.navigationBar.frame = CGRectMake(0, 20, self.navigationController.navigationBar.frame.size.width, self.navigationController.navigationBar.frame.size.height);
正确显示navigationBar,但在旋转VideoPlayer时需要显示/隐藏navigationBar使其隐藏。
有任何想法吗? 等待您的回答,谢谢。
因此,经过一些操作,我决定将alpha设置为我的navigationBar。
if (SYSTEM_VERSION_LESS_THAN(@"5"))
[ptr HideMainNavigationBar];
else self.navigationController.navigationBar.alpha = 0;
我希望这对某人有用。 再见。
我刚刚在github上发布了专门用于UINavigationBar外观管理的代码。 签出RRViewControllerExtension ,它将优雅地解决您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.