IOS手势UIGestureRecognizer
UIGestureRecognizer是一个抽象类,定义了所有手势的基本行为,它有6个子类处理具体的手势:
1.UITapGestureRecognizer (任意手指任意次数的点击)
// 点击次数
numberOfTapsRequired
// 手指个数
numberOfTouchesRequired
- UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] init];
- [tapGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
- [tapGestureRecognizer setNumberOfTapsRequired:2];
- [tapGestureRecognizer setNumberOfTouchesRequired:2];
- [self.view addGestureRecognizer:tapGestureRecognizer];
- [tapGestureRecognizer release];
2.UIPinchGestureRecognizer (两个手指捏合动作)
// 手指捏合,大于1表示两个手指之间的距离变大,小于1表示两个手指之间的距离变小
scale
// 手指捏合动作时的速率(加速度)
velocity
- UIPinchGestureRecognizer *pinchGestureRecognizer = [[UIPinchGestureRecognizer alloc] init];
- [pinchGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
- [self.view addGestureRecognizer:pinchGestureRecognizer];
- [pinchGestureRecognizer release];
3.UIPanGestureRecognizer (摇动或者拖拽)
// 最少手指个数
minimumNumberOfTouches
// 最多手指个数
maximumNumberOfTouches
- UIPanGestureRecognizer *panGestureRecognizer = [[UIPanGestureRecognizer alloc] init];
- [panGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
- [panGestureRecognizer setMinimumNumberOfTouches:1];
- [panGestureRecognizer setMaximumNumberOfTouches:5];
- [self.view addGestureRecognizer:panGestureRecognizer];
- [panGestureRecognizer release];
4.UISwipeGestureRecognizer (手指在屏幕上滑动操作手势)
// 滑动手指的个数
numberOfTouchesRequired
// 手指滑动的方向 (Up,Down,Left,Right)
direction
- UISwipeGestureRecognizer *swipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] init];
- [swipeGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
- [swipeGestureRecognizer setNumberOfTouchesRequired:2];
- [swipeGestureRecognizer setDirection:UISwipeGestureRecognizerDirectionRight];
- [self.view addGestureRecognizer:swipeGestureRecognizer];
- [swipeGestureRecognizer release];
5.UIRotationGestureRecognizer (手指在屏幕上旋转操作)
// 旋转方向,小于0为逆时针旋转手势,大于0为顺时针手势
rotation
// 旋转速率
velocity
- UIRotationGestureRecognizer *rotationGestureRecognizer = [[UIRotationGestureRecognizer alloc] init];
- [rotationGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
- [self.view addGestureRecognizer:rotationGestureRecognizer];
- [rotationGestureRecognizer release];
6.UILongPressGestureRecognizer (长按手势)
// Default is 0. The number of full taps required before the press for gesture to be recognized
numberOfTapsRequired
// 需要长按的手指的个数
numberOfTouchesRequired
// 需要长按的时间,最小为0.5s
minimumPressDuration
// 手指按住允许移动的距离
allowableMovement
- UILongPressGestureRecognizer *longPressGestureRecognizer = [[UILongPressGestureRecognizer alloc] init];
- [longPressGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
- [longPressGestureRecognizer setMinimumPressDuration:1.0f];
- [longPressGestureRecognizer setAllowableMovement:50.0];
- [self.view addGestureRecognizer:longPressGestureRecognizer];
- [longPressGestureRecognizer release];
IOS手势UIGestureRecognizer的更多相关文章
- iOS手势UIGestureRecognizer的使用失效问题
问题:视图正常展示在界面中,父层是放在window上的,底部的一个控件的点击事件失效(所有设置都正常) 解决思路:虽然视图能够正常展示,但是发现父类视图的底部尺寸比子类的视图的尺寸小,也就是说上层视图 ...
- iOS手势UIGestureRecognizer的使用及手势冲突的解决办法【转】
转自:iOS开发中的手势体系——UIGestureRecognizer分析及其子类的使用 关于手势的一篇很好的帖子,转载过来免得丢失.你可能最感兴趣的是手势间的互斥处理,那么就搜索 4.手势间的互斥处 ...
- 使用iOS手势UIGestureRecognizer
UIKit中包含了UIGestureRecognizer类,用于检测发生在设备中的手势.UIGestureRecognizer是一个抽象类,定义了所有手势的基本行为,它有下面一些子类用于处理具体的手势 ...
- 点击事件touches与ios的手势UIGestureRecognizer
.h文件 @property (weak,nonatomic) IBOutlet UILabel *messageLabel;@property (weak,nonatomic) IBOutlet U ...
- [BS-25] IOS中手势UIGestureRecognizer概述
IOS中手势UIGestureRecognizer概述 一.概述 iPhone中处理触摸屏的操作,在3.2之前是主要使用的是由UIResponder而来的如下4种方式: - (void)touches ...
- iOS手势学习UIGestureRecognizer & cocos2d 手势推荐
iOS手势学习UIGestureRecognizer & cocos2d 手势推荐 手势识别类型: UILongPressGestureRecognizer // 长按UIPanGestur ...
- ios手势
iOS 手势操作:拖动.捏合.旋转.点按.长按.轻扫.自定义 大 中 小 1.UIGestureRecognizer 介绍 手势识别在 iOS 中非常重要,他极大地提高了移动设备的使用便捷性. i ...
- iOS手势处理
iOS手势处理 iOS手势有着如下几种: UITapGestureRecognizer UIPinchGestureRecognizer UIRotationGestureRecognizer UIS ...
- iOS Programming UIGestureRecognizer and UIMenuController
iOS Programming UIGestureRecognizer and UIMenuController A UIGestureRecognizer intercepts touches ...
随机推荐
- jQuery hide()并不等于hide(0)
在实际使用中,经常用hide()函数来隐藏HTML元素,通常是没有什么问题的,但在一次做二级下拉菜单时遇到了问题,后来才发现有时候“speed”是不能省略的,即使“speed=0”,也就是说hide( ...
- Android 图片三级缓存
图片缓存的原理 实现图片缓存也不难,需要有相应的cache策略.这里采用 内存-文件-网络 三层cache机制,其中内存缓存包括强引用缓存和软引用缓存(SoftReference),其实网络不算cac ...
- 9.20 java继承
package liu0920; //继承 public class Person { //属性 姓名和年龄 private String name; private int age; //无参构造方 ...
- servlet session 相关
1.session是server维护的一个变量,如果消除每个session?----这里只做指定key的session删除 1.1.显示调用 废除指定key的session session.remov ...
- ACM Steps 2.1.4
Largest prime factor Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Othe ...
- CMD中常用命令
打开CMD的几种方法: 搜索一下 1: 打开我的电脑,在地址栏输入该地址后按回车键打开:C:\WINDOWS\system32\cmd.exe 2: 打开我的电脑,进入C盘WINDOWS\system ...
- hadoop-1.2.1安装配置
1.准备三台节点 hnd1 hnd2 hnd3 下载 hadoop 下载地址:http://apache.fayea.com/hadoop/common/ API文档:http://hadoop. ...
- CSS学起来并不难
CSS CSS学起来并不难,但在大型项目中,就变得难以管理,特别是不同的人在CSS书写风格上稍有不同,团队上就更加难以沟通,为此总结了一些如何实现高效整洁的CSS代码原则: 1. 使用Reset但并非 ...
- 在strut.xml 中使用ognl
在struts.xml 中使用ognl有两种方面的需求: 1. 在action执行时从struts.xml中读取param标签中的值,然后调用标签name属性相应的set方法对action中的变量赋值 ...
- IOS第18天(3,CALayer隐式动画)
******隐式动画(手指拖拽Layer) #import "HMViewController.h" @interface HMViewController () @propert ...