http://blog.csdn.net/totogo2010/article/details/8615940iphone
UITapGestureRecognizer Tap(点一下)ui
UIPinchGestureRecognizer Pinch(二指往內或往外拨动,平时常常用到的缩放)spa
UIRotationGestureRecognizer Rotation(旋转).net
UISwipeGestureRecognizer Swipe(滑动,快速移动)blog
UIPanGestureRecognizer Pan (拖移,慢速移动)索引
UILongPressGestureRecognizer LongPress(长按)图片
自定义手势 TouchBegainip
出现冲突时,要设定优先识别顺序,目前只是doubleTap、swipe
[singleTap requireGestureRecognizerToFail:doubleTap];
[singleTap requireGestureRecognizerToFail:twoFingerTap];
[pinch requireGestureRecognizerToFail:swipeRight];
[pinch requireGestureRecognizerToFail:swipeLeft];get
向左移动it
UISwipeGestureRecognizer *swipeLeft = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(leftHandleSwipe:)];//声明和初始化手势识别器
//对手势识别器进行属性设定
[swipeLeft setNumberOfTouchesRequired:1];
[swipeLeft setDirection:UISwipeGestureRecognizerDirectionLeft];
[self.view addGestureRecognizer:swipeLeft];//把手势识别器加到view中去
单击
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
[self.view addGestureRecognizer:singleTap];
双击
UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTap:)];
[doubleTap setNumberOfTapsRequired:2]; //点击的次数
[self.view addGestureRecognizer:doubleTap];
两个手指单击
UITapGestureRecognizer *twoFingerTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTwoFingerTap:)];
[twoFingerTap setNumberOfTouchesRequired:2];//手指的个数
[self.view addGestureRecognizer:twoFingerTap];
旋转
UIRotationGestureRecognizer *rotation = [[UIRotationGestureRecognizer alloc] initWithTarget:self action:@selector(handleRotation:)];
[self.view addGestureRecognizer:rotation];
缩放
UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(handlePinch:)];
[self.view addGestureRecognizer:pinch];
拖动
UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePan:)];
[self.view addGestureRecognizer:pan];
长按
UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPress:)];
[self.view addGestureRecognizer:longPress];
对应效果在各个方法中对应处理
1.点击(Tap)
点击做为最经常使用手势,用于按下或选择一个控件或条目(相似于普通的鼠标点击)、
2.拖动(Drag)
拖动用于实现一些页面的滚动,以及对控件的移动功能。
3.滑动(Flick)
滑动用于实现页面的快速滚动和翻页的功能。
4.横扫(Swipe)
横扫手势用于激活列表项的快捷操做菜单
5.双击(Double Tap)
双击放大并居中显示图片,或恢复原大小(若是当前已经放大)。同时,双击可以激活针对文字编辑菜单。
6.放大(Pinch open)
放大手势能够实现如下功能:打开订阅源,打开文章的详情。在照片查看的时候,放大手势也可实现放大图片的功能。
7.缩小(Pinch close)
缩小手势,能够实现与放大手势相反且对应的功能的功能:关闭订阅源退出到首页,关闭文章退出至索引页。在照片查看的时候,缩小手势也可实现缩小图片的功能。
8.长按(Touch &Hold)
在个人订阅页,长按订阅源将自动进入编辑模式,同时选中手指当前按下的订阅源。这时可直接拖动订阅源移动位置。
针对文字长按,将出现放大镜辅助功能。松开后,则出现编辑菜单。
针对图片长按,将出现编辑菜单。
9.摇晃(Shake) 摇晃手势,将出现撤销与重作菜单。主要是针对用户文本输入的。