iOS 解決導航欄隱藏,顯示,頁面跳轉閃一下的問題

weixin_34146805發表於2017-11-24

今天忽然發現一個問題,一個隱藏的導航欄在push到下一個頁面的時候,導航欄閃了一下,著實讓人難受,所以著手解決一下

一開始的寫法,應該很多人都是這樣寫的。
-(void)viewWillAppear:(BOOL)animated{

    //self.navigationController.navigationBarHidden = YES;
    
}
-(void)viewWillDisappear:(BOOL)animated{

    //self.navigationController.navigationBarHidden = NO;
}


改完之後的寫法,其實很簡單,效果還是可以的
-(void)viewWillAppear:(BOOL)animated{

    [self.navigationController setNavigationBarHidden:YES animated:YES];
    
}
-(void)viewWillDisappear:(BOOL)animated{

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

可能運氣比較好,在簡書上很快就找到一個swift的解決方法。

override func viewWillAppear(animated: Bool) {

    super.viewWillAppear(animated)
    self.navigationController?.setNavigationBarHidden(true, animated: true)
   }
  override func viewWillDisappear(animated: Bool) {
     super.viewWillDisappear(animated)
     self.navigationController?.setNavigationBarHidden(false, animated: true)
   }

swift傳送門---希望你也有一個好運氣!!共勉。

相關文章