ios基础篇(九)—— 手势识别

UIGestureRecognizer:

手势识别器 能轻松识别用户在某个view上面做的一些常见手势

UIGestureRecognizer 是一个抽象类,定义了所有手势的基本行为,使用它的子类才能处理具体的手势

ios基础篇(九)—— 手势识别_第1张图片

UIPanGestureRecognizer(拖动)
UIPinchGestureRecognizer(捏合)
UIRotationGestureRecognizer(旋转)
UITapGestureRecognizer(点按)敲击
UILongPressGestureRecognizer(长按)
​UISwipeGestureRecognizer(轻扫)

先创建一个手势对象,给view去添加,实现方法

UITapGestureRecognizer(点按)敲击

numberOfTapRequired = 2;  //点几次

numberOfTouchesRequired = 2; //几根手指

UILongPressGestureRecognizer(长按)

minimumPressDuration  最小触摸时间  长按多长时间有反应

allowableMovement 误差范围

​UISwipeGestureRecognizer(轻扫)

默认轻扫手势从左到右

direction 课更改手势方向 

UISwipeGestureRecognizer* swipe1 = [[UISwipeGestureRecognizer alloc] 
                                    initWithTarget:self action @selector(swipe:)];
swipe1.direction = UISwipeGestureRecognizerDirectionleft;
[self.imageView addGestureRecognizer:swipe1];

要多个手势 就多个对象

UIRotationGestureRecognizer(旋转)

在实现方法中 ,每旋转 将rotation 归为0 可以防止 图片角度增加 变快的情况  累加

ios基础篇(九)—— 手势识别_第2张图片

UIPinchGestureRecognizer(捏合)

scale为1 同样避免手势捏合的角度 累加到图片上  图片变化的速度过快

ios基础篇(九)—— 手势识别_第3张图片

UIPanGestureRecognizer(拖拽)

方法:translationInView  获取手指移动的位置

ios基础篇(九)—— 手势识别_第4张图片

旋转和缩放是有冲突的

多个手势同时使用  - >代理  

ios基础篇(九)—— 手势识别_第5张图片

https://www.jianshu.com/p/df86508e2811

你可能感兴趣的:(ios小白)