博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS 如何在整个屏幕中都能实现滑动返回的效果
阅读量:6690 次
发布时间:2019-06-25

本文共 1476 字,大约阅读时间需要 4 分钟。

1 - (void)setupGetsInNav 2 { 3     UIGestureRecognizer *gesture = self.interactivePopGestureRecognizer; 4     gesture.enabled = NO; 5     UIView *gestureView = gesture.view; 6      7     UIPanGestureRecognizer *popRecognizer = [[UIPanGestureRecognizer alloc] init]; 8     popRecognizer.delegate = self; 9     popRecognizer.maximumNumberOfTouches = 1;10     [gestureView addGestureRecognizer:popRecognizer];11     /**12      *  获取系统手势的target数组13      */14     NSMutableArray *_targets = [gesture valueForKey:@"_targets"];15     /**16      *  获取它的唯一对象,我们知道它是一个叫UIGestureRecognizerTarget的私有类,它有一个属性叫_target17      */18     id gestureRecognizerTarget = [_targets firstObject];19     /**20      *  获取_target:_UINavigationInteractiveTransition,它有一个方法叫handleNavigationTransition:21      */22     id navigationInteractiveTransition = [gestureRecognizerTarget valueForKey:@"_target"];23     /**24      *  通过前面的打印,我们从控制台获取出来它的方法签名。25      */26     SEL handleTransition = NSSelectorFromString(@"handleNavigationTransition:");27     /**28      *  创建一个与系统一模一样的手势,我们只把它的类改为UIPanGestureRecognizer29      */30     [popRecognizer addTarget:navigationInteractiveTransition action:handleTransition];31 32 }
1 - (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {2     /**3      *  这里有两个条件不允许手势执行,1、当前控制器为根控制器;2、如果这个push、pop动画正在执行(私有属性)4      */5     return self.viewControllers.count != 1 && ![[self valueForKey:@"_isTransitioning"] boolValue];6 }

只需要在全局的导航控制器中添加上边代码即可

转载地址:http://ukkoo.baihongyu.com/

你可能感兴趣的文章
Xcode项目中同一个名称不同位置 简单修改
查看>>
java设计模式-建造者模式
查看>>
oracle笔记
查看>>
ContentProvider数据更新
查看>>
Java 关于Ajax的实例--验证用户名(四)
查看>>
入字节码 -- ASM 关键接口 MethodVisitor
查看>>
如何在Centos 6 X86_64安装RHEL EPEL知识库?
查看>>
spring-util命名空间
查看>>
微信小程序周报(第四期)
查看>>
Scrapy的架构初探
查看>>
一些常用RPM Repository(RPM软件仓库)地址
查看>>
浅谈设计模式之工厂模式
查看>>
Xcode常用插件
查看>>
在北大的那些日子
查看>>
library file cell view&comparison tool
查看>>
实体 map 属性
查看>>
php设计模式--适配器模式
查看>>
最近一直很纠结,发现人真的不能认真。
查看>>
java中的枚举类 enum使用与分析
查看>>
JAVA 四大域对象总结
查看>>