你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> iOS swift 總結NavigationController出現問題及解決方法

iOS swift 總結NavigationController出現問題及解決方法

編輯:IOS開發綜合

IOS swift 總結NavigationController出現問題及解決方法

最近用Swift語言做了一些iOS項目,頗有些心得,記下一些深刻的問題造福自己,服務大家

1.以NavigationController做為容器後狀態欄的字體顏色就會不在受系統的控制,要在NavigationController中的根ViewController中設置方可生效,代碼如下:

self.navigationController!.navigationBar.barStyle = UIBarStyle.Black

供選擇的有UIBarStyle.Black,UIBarStyle.Default,UIBarStyle.BlackOpaque,UIBarStyle.BlackTranslucent,具體選擇視項目需求而定

2.NavigationController做為容器後自帶的滑動返回效果失效問題

導致該問題的情況是在storyboard中push到下一個頁面後會自動生成一個navigationItem做為導航欄,當我們自己拖個按鈕到導航欄返回按鈕的位置,

並自定義了返回事件後,滑動返回效果就會失效

解決方法如下:

NavigationController的根ViewController繼承UIGestureRecognizerDelegate,viewDidLoad()中添加

self.navigationController!.interactivePopGestureRecognizer!.delegate = self

復寫方法gestureRecognizerShouldBegin()代碼如下:

 func gestureRecognizerShouldBegin(gestureRecognizer: UIGestureRecognizer) -> Bool {
    if (self.navigationController!.viewControllers.count == 1){
      return false
    }else{
     return true
    }
  }


感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved