美文网首页
关于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