美文网首页
关于NavigationBar遇到的坑

关于NavigationBar遇到的坑

作者: 民谣里不是故事就是诗丶 | 来源:发表于2017-04-05 16:06 被阅读6次

当在工程中,会存在部分页面需要显示navigationBar,部分页面需要隐藏的情况。

经实验证明,有两点需要注意,

1、要先重写子类的方法,再调用super的hidden方法,不然会导致页面切换一半时出现页面层级不正确的异常。

2、不要直接使用self.navigationController.navigationBarHidden=YES这种方式,而应该采用set:animated:方法来触发动画效果。

- (void)viewWillAppear:(BOOL)animated

{

//根据偏移量判断是否显示导航栏

floatoffset =self.listView.contentOffset.y;

if(offset >=SCREEN_HEIGHT+3*kfuncCellViewHeight) {

[self.navigationController setNavigationBarHidden:NO animated:animated];

}else{

[self.navigationController setNavigationBarHidden:YES animated:animated];

}

[super viewWillAppear:animated];

}

- (void)viewWillDisappear:(BOOL)animated

{

[self.navigationController setNavigationBarHidden:NO animated:animated];

[super viewWillDisappear:animated];

}

相关文章

网友评论

      本文标题:关于NavigationBar遇到的坑

      本文链接:https://www.haomeiwen.com/subject/awqxattx.html