最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Swift NavigationBar隱藏后的右滑手勢效果

 更新時間:2017年08月29日 09:26:35   作者:lv灬陳強  
這篇文章主要為大家詳細介紹了Swift NavigationBar隱藏后的右滑手勢效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下

需求

我們在開發(fā)中經(jīng)常遇見這樣的需求,就是A視圖沒有導(dǎo)航,pushB視圖后導(dǎo)航欄。然后要求可以使用iOS的系統(tǒng)側(cè)滑返回功能。類似如下的功能:

問題

在處理這個需求的時候,我們一般會遇到兩個問題:

右滑返回手勢

ios開發(fā)中,使用push視圖,系統(tǒng)是有默認的側(cè)滑返回上個視圖的功能。但是當我們自定義導(dǎo)航欄時,這個手勢的事件就沒有再觸發(fā),此時只要我們重新將代理設(shè)置為controller即可。

代碼示例:

在BaseViewController中添加如下的代碼

 //開啟 push視圖 右滑手勢()
  fileprivate func openSwipe(){
  if(self.navigationController != nil){
    self.navigationController!.interactivePopGestureRecognizer!.delegate = self;
  }

  }

  func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {

    if self.navigationController?.viewControllers.count == 1{
      return false;
    }
    return true;
  }

或者在BaseNavigationController中添加如下代碼:

extension BaseNavigationController:UIGestureRecognizerDelegate{

  override func viewDidLoad() {
    super.viewDidLoad()
    self.interactivePopGestureRecognizer?.delegate = self
  }
  func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {
    if self.navigationController?.viewControllers.count == 1{
      return false;
    }
    return true;
  }

}

右劃返回時導(dǎo)航欄的隱藏問題

oc代碼:

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

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

Swift代碼:

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


  }
  override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(animated);
    self.navigationController?.navigationBar.isHidden = false;
  }

注意點

我們隱藏導(dǎo)航欄的時候,務(wù)必使用animated為true.這樣在右劃返回視圖的時候才不會突兀,否則則會是下面的效果。剛開始滑動,導(dǎo)航欄就全不見了。

這里寫圖片描述

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Swift中排序算法的簡單取舍詳解

    Swift中排序算法的簡單取舍詳解

    對于排序算法, 通常簡單的, 為大家所熟知的有, 選擇排序, 冒泡排序, 快速排序, 當然還有哈希, 桶排序之類的, 本文僅比較最為常見的選擇, 冒泡和快排,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2018-03-03
  • 如何使用Swift來實現(xiàn)一個命令行工具的方法

    如何使用Swift來實現(xiàn)一個命令行工具的方法

    這篇文章主要介紹了如何使用Swift來實現(xiàn)一個命令行工具,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Swift高階函數(shù)contains?allSatisfy?reversed?lexicographicallyPrecedes用法示例

    Swift高階函數(shù)contains?allSatisfy?reversed?lexicographicallyPr

    這篇文章主要為大家介紹了Swift高階函數(shù)contains?allSatisfy?reversed?lexicographicallyPrecedes用法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • swift學(xué)習(xí)文檔(筆記)

    swift學(xué)習(xí)文檔(筆記)

    這篇文章主要介紹了學(xué)習(xí)swift的筆記,swift最近也比較熱,需要的朋友可以參考下
    2014-09-09
  • Swift教程之類的析構(gòu)詳解

    Swift教程之類的析構(gòu)詳解

    這篇文章主要介紹了Swift教程之類的析構(gòu)詳解,在一個類的實例被釋放之前,析構(gòu)函數(shù)會被調(diào)用,本文即講解了析構(gòu)過程原理、析構(gòu)器操作等內(nèi)容,需要的朋友可以參考下
    2015-01-01
  • Swift心得筆記之控制流

    Swift心得筆記之控制流

    控制流(Control Flow)我不想這么譯的。。。我更想叫控制語句,但是想想,這么叫也沒錯,意指流程控制。大部分用法跟C類似。
    2015-04-04
  • Swift利用CoreData實現(xiàn)一個通訊錄存儲詳解

    Swift利用CoreData實現(xiàn)一個通訊錄存儲詳解

    這篇文章主要給大家介紹了關(guān)于Swift利用CoreData實現(xiàn)一個通訊錄存儲的相關(guān)資料,本文是大家學(xué)習(xí)coreDate的基礎(chǔ)問題,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-12-12
  • 簡陋的swift carthage copy-frameworks 輔助腳本代碼

    簡陋的swift carthage copy-frameworks 輔助腳本代碼

    下面小編就為大家分享一篇簡陋的swift carthage copy-frameworks 輔助腳本代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • Swift?并發(fā)修改Sendable?閉包實例詳解

    Swift?并發(fā)修改Sendable?閉包實例詳解

    這篇文章主要為大家介紹了Swift?并發(fā)修改Sendable?閉包實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • swift 3.0中實現(xiàn)字符串截取、比較的方法示例

    swift 3.0中實現(xiàn)字符串截取、比較的方法示例

    時,為了使用現(xiàn)有的字符串生成一個新的字符串,我們可以使用截取字符串的方法實現(xiàn)。下面這篇文章主要給大家介紹了關(guān)于swift 3.0中實現(xiàn)字符串截取的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒。
    2017-10-10

最新評論

樟树市| 霍林郭勒市| 汤阴县| 茶陵县| 揭东县| 太和县| 洪江市| 富蕴县| 合肥市| 苍山县| 石家庄市| 资溪县| 安乡县| 龙门县| 平山县| 英吉沙县| 宁德市| 来安县| 浮梁县| 赫章县| 铜鼓县| 望都县| 韩城市| 栾川县| 哈尔滨市| 特克斯县| 万源市| 安溪县| 桓仁| 桃园市| 和平县| 武义县| 田阳县| 青铜峡市| 敦化市| 西宁市| 兴义市| 都兰县| 永新县| 美姑县| 六枝特区|