写在前面
一个隐藏导航栏的A页面push到另一个有导航栏的B页面,然后从B页面pop回A页面导航栏就会出现白边
直接上图
没有过渡动画
原因是:A界面导航栏被影藏,B页面的导航栏存在。过渡的时候没有动画
image.png
赶紧修改一下
- (void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:YES];
[UIApplication sharedApplication].statusBarStyle= UIStatusBarStyleLightContent;
}
-(void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:YES];
}
看效果
修正效果图
问题很简单,要细心哟!
另外在分享一个方法实现同样的效果
-(void)viewDidLoad {
self.navigationController.delegate = self;
}
//#pragma mark - UINavigationControllerDelegate
// 将要显示控制器
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
// 判断要显示的控制器是否是自己
BOOL isShowHomePage = [viewController isKindOfClass:[self class]];
[self.navigationController setNavigationBarHidden:isShowHomePage animated:YES];
}










网友评论