搜了好多的資料,千篇一律都是說要重寫nav
經(jīng)過好友指點,如下代碼也是可以的。不需要重寫nav
/**
* 思路,通過獲取nav的target 來調(diào)用nav的handleNavigationTransition: 這個轉(zhuǎn)場動畫
*/
- (void)viewDidLoad
{
[super viewDidLoad];
/**
* 右滑返回
* 調(diào)用系統(tǒng)的方法
*/
self.navigationController.interactivePopGestureRecognizer.enabled=NO;
id target = self.navigationController.interactivePopGestureRecognizer.delegate;
UIPanGestureRecognizer *pan=[[UIPanGestureRecognizer alloc]initWithTarget:target action:@selector(handleNavigationTransition:)];
pan.delegate = self;
[self.view addGestureRecognizer:pan];
}
解決一個bug(根試圖右滑,導(dǎo)致無法push的問題)
#pragma mark delegate
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer{
if (self.navigationController.viewControllers.count <= 1 ) {
return NO;
}
return YES;
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。