iOS開發(fā)之導(dǎo)航欄各種右滑返回失效的解決方法匯總
前言
眾所周知iOS 的幾乎全部頁(yè)面都是需要右滑返回的,否則用戶體驗(yàn)會(huì)大打折扣,但是在開發(fā)過(guò)程中經(jīng)常會(huì)碰到某些頁(yè)面右滑返回失效的情況,下面記錄一下各種情況下右滑返回失效的解決方法。
下面話不多說(shuō)了,來(lái)隨著小編一起學(xué)習(xí)學(xué)習(xí)吧
自定義返回按鈕時(shí)失效
當(dāng)你重寫 self.navigationItem.leftBarButtonItem
之后,自帶的返回按鈕就會(huì)被覆蓋,右滑返回就會(huì)失效,解決辦法只要加入下面這句代碼即可。
- (void)viewDidLoad { [super viewDidLoad]; // 解決右滑返回失效問(wèn)題 self.navigationController.interactivePopGestureRecognizer.delegate = self; }
然后你可以使用下面這句代碼來(lái)控制是否允許右滑返回,這句代碼要加在 viewDidAppear 里面,否則多個(gè)頁(yè)面切換時(shí)會(huì)出現(xiàn)異常。
- (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; // 是否允許右滑返回 [self.navigationController.interactivePopGestureRecognizer setEnabled:_isShowBackButton]; }
UIScrollView 頁(yè)面中失效
當(dāng)使用 UIScrollView 、UITableView 、UICollectionView 等滑動(dòng)視圖的左右滑動(dòng)時(shí),滑動(dòng)手勢(shì)就會(huì)和右滑返回的手勢(shì)沖突,右滑返回就會(huì)失效,解決辦法只要加入下面這句代碼即可。
// 解決右滑返回失效的問(wèn)題 [scrollView.panGestureRecognizer requireGestureRecognizerToFail:self.navigationController.interactivePopGestureRecognizer];
UIWebView 頁(yè)面中失效
UIWebView 頁(yè)面比較特殊,不僅右滑返回會(huì)失效,自定義的手勢(shì)也會(huì)全部失效,因?yàn)?UIWebView 中已經(jīng)內(nèi)部集成了點(diǎn)擊、滑動(dòng)等多個(gè)手勢(shì),上面的方法在 UIWebView 中并沒有作用,解決辦法是加入以下允許多個(gè)手勢(shì)并發(fā)的代理方法。
// 允許多個(gè)手勢(shì)并發(fā) - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer { return YES; }
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
iOS安全防護(hù)系列之重簽名防護(hù)與sysctl反調(diào)試詳解
這篇文章主要給大家介紹了關(guān)于iOS安全防護(hù)系列之重簽名防護(hù)與sysctl反調(diào)試的相關(guān)資料,文中通過(guò)示例代碼以及圖文介紹的非常詳細(xì),對(duì)各位iOS開發(fā)者們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-07-07IOS開發(fā)之路--C語(yǔ)言數(shù)組和字符串
數(shù)組在C語(yǔ)言中有著特殊的地位,它有很多特性,例如它的存儲(chǔ)是連續(xù)的,數(shù)組的名稱就是數(shù)組的地址等。而在C語(yǔ)言中是沒有String類型的,那么如果要表示一個(gè)字符串,就必須使用字符串?dāng)?shù)組2014-08-08iOS App開發(fā)中的UIStackView堆疊視圖使用教程
UIStackView是iOS9以來(lái)新增加的組件,使我們能夠?qū)IView子類對(duì)象進(jìn)行靈活排版,這里我們就來(lái)看一下iOS App開發(fā)中的UIStackView堆疊視圖使用教程2016-07-07iOS開發(fā)實(shí)現(xiàn)計(jì)算器功能
這篇文章主要為大家詳細(xì)介紹了iOS開發(fā)實(shí)現(xiàn)計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10iOS開發(fā)TableView網(wǎng)絡(luò)請(qǐng)求及展示預(yù)加載實(shí)現(xiàn)示例
這篇文章主要為大家介紹了iOS開發(fā)TableView網(wǎng)絡(luò)請(qǐng)求及展示預(yù)加載實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07ios開發(fā)navigationController pushViewController 方式多次跳轉(zhuǎn)返回到最上層返回到
這篇文章主要介紹了ios開發(fā)navigationController pushViewController 方式多次跳轉(zhuǎn)返回到最上層返回到指定的某一層的實(shí)現(xiàn)方法的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-09-09