手势
2013-12-22 21:27
176 查看
UIGestureRecognizer是一个抽象类,定义了所有手势的基本行为,它有6个子类处理具体的手势:
numberOfTapsRequired
// 手指个数
numberOfTouchesRequired
[plain] view
plaincopy
UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] init];
[tapGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
[tapGestureRecognizer setNumberOfTapsRequired:2];
[tapGestureRecognizer setNumberOfTouchesRequired:2];
[self.view addGestureRecognizer:tapGestureRecognizer];
[tapGestureRecognizer release];
scale
// 手指捏合动作时的速率(加速度)
velocity
[plain] view
plaincopy
UIPinchGestureRecognizer *pinchGestureRecognizer = [[UIPinchGestureRecognizer alloc] init];
[pinchGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
[self.view addGestureRecognizer:pinchGestureRecognizer];
[pinchGestureRecognizer release];
minimumNumberOfTouches
// 最多手指个数
maximumNumberOfTouches
[plain] view
plaincopy
UIPanGestureRecognizer *panGestureRecognizer = [[UIPanGestureRecognizer alloc] init];
[panGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
[panGestureRecognizer setMinimumNumberOfTouches:1];
[panGestureRecognizer setMaximumNumberOfTouches:5];
[self.view addGestureRecognizer:panGestureRecognizer];
[panGestureRecognizer release];
numberOfTouchesRequired
// 手指滑动的方向 (Up,Down,Left,Right)
direction
[plain] view
plaincopy
UISwipeGestureRecognizer *swipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] init];
[swipeGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
[swipeGestureRecognizer setNumberOfTouchesRequired:2];
[swipeGestureRecognizer setDirection:UISwipeGestureRecognizerDirectionRight];
[self.view addGestureRecognizer:swipeGestureRecognizer];
[swipeGestureRecognizer release];
rotation
// 旋转速率
velocity
[plain] view
plaincopy
UIRotationGestureRecognizer *rotationGestureRecognizer = [[UIRotationGestureRecognizer alloc] init];
[rotationGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
[self.view addGestureRecognizer:rotationGestureRecognizer];
[rotationGestureRecognizer release];
numberOfTapsRequired
// 需要长按的手指的个数
numberOfTouchesRequired
// 需要长按的时间,最小为0.5s
minimumPressDuration
// 手指按住允许移动的距离
allowableMovement
[plain] view
plaincopy
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];
转自:http://blog.csdn.net/lixuwen521/article/details/7652233
1.UITapGestureRecognizer (任意手指任意次数的点击)
// 点击次数numberOfTapsRequired
// 手指个数
numberOfTouchesRequired
[plain] view
plaincopy
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
[plain] view
plaincopy
UIPinchGestureRecognizer *pinchGestureRecognizer = [[UIPinchGestureRecognizer alloc] init];
[pinchGestureRecognizer addTarget:self action:@selector(gestureRecognizerHandle:)];
[self.view addGestureRecognizer:pinchGestureRecognizer];
[pinchGestureRecognizer release];
3.UIPanGestureRecognizer (摇动或者拖拽)
// 最少手指个数minimumNumberOfTouches
// 最多手指个数
maximumNumberOfTouches
[plain] view
plaincopy
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
[plain] view
plaincopy
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
[plain] view
plaincopy
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 recognizednumberOfTapsRequired
// 需要长按的手指的个数
numberOfTouchesRequired
// 需要长按的时间,最小为0.5s
minimumPressDuration
// 手指按住允许移动的距离
allowableMovement
[plain] view
plaincopy
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];
转自:http://blog.csdn.net/lixuwen521/article/details/7652233
相关文章推荐
- 从基础开始,从一个SQLHelper开始
- Add Subtitle (srt) to Video by using Ffmpeg
- 机房收费系统—封装函数
- error LNK2001: unresolved external symbol __imp__PathFileExistsA@4
- 设计模式之策略模式
- 关于c/c++中sizeof的资源
- error LNK2001: unresolved external symbol __imp__PathFileExistsA@4
- ZOJ-2345
- MyBabitsXML中遍历以及插入语句返回ID
- ajax学习笔记
- 数制转换
- POJ1042 钓鱼
- hdu 4292 Food 最大流
- Clojure 学习入门(5)—— 关键字
- hdu 4292 Food 最大流
- Python并发编程的几篇文章
- Disk2vhd v2.0有新版本了
- virtual 与 override
- VirtualBox – Cannot register the hard disk 解决办法
- The Cat in the Hat