iOS導(dǎo)航欄自帶的返回按鈕形式單一,所以大多情況下萧朝,我們都需要自定義導(dǎo)航欄返回按鈕腊尚。但是此時我們卻發(fā)現(xiàn)頁面的側(cè)滑返回功能不可用了略荡。
為了解決這個問題庵佣,我們需要在App中使用我們自定義的導(dǎo)航控制控制器,示例代碼如下:
//第一步:設(shè)置自定義導(dǎo)航控制器使用UIGestureRecognizerDelegate
@interface BaseNavigationController ()<uigesturerecognizerdelegate>
@end
@implementation BaseNavigationController
- (void)viewDidLoad {
[super viewDidLoad];
//第二步:設(shè)置自定義導(dǎo)航控制器的側(cè)滑手勢的代理
self.interactivePopGestureRecognizer.delegate = self;
}
//第三步:實現(xiàn)代理方法
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer{
if (self.childViewControllers.count == 1) {
// 表示用戶在根控制器界面汛兜,就不需要觸發(fā)滑動手勢巴粪,
return NO;
}
return YES;
}