首先要有navigationcontroller,在navigationcontroller的viewdidload方法裏添加下面的代碼
NSObject *targetObjc = [[self.interactivePopGestureRecognizer valueForKey:@"_targets"] firstObject];
NSObject *target = [targetObjc valueForKey:@"target"];
UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer alloc] initWithTarget:target action:@selector(handleNavigationTransition:)];
[self.view addGestureRecognizer:pan];
思路是利用runtime打印出UIGestureRecognizer的屬性,找到target存放的位置,繼而找到self.interactivePopGestureRecognizer響應方法,重新創建一個平移手勢加入到view上,利用響應者鏈實現我們的右滑pop效果