IOS开发—手势操作(点击+滑动)
来源:互联网 发布:2017微信用户数据报告 编辑:程序博客网 时间:2024/04/30 06:59
//单指单击
UITapGestureRecognizer *singleFingerOne = [[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(handleSingleFingerEvent:)];
singleFingerOne.numberOfTouchesRequired = 1; //手指数
singleFingerOne.numberOfTapsRequired = 1; //tap次数
singleFingerOne.delegate = self;
//单指双击
UITapGestureRecognizer *singleFingerTwo = [[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(handleSingleFingerEvent:)];
singleFingerTwo.numberOfTouchesRequired = 1;
singleFingerTwo.numberOfTapsRequired = 2;
singleFingerTwo.delegate = self;
//双指单击
UITapGestureRecognizer *doubleFingerOne = [[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(handleDoubleFingerEvent:)];
doubleFingerOne.numberOfTouchesRequired = 2;
doubleFingerOne.numberOfTapsRequired = 1;
doubleFingerOne.delegate = self;
UITapGestureRecognizer *doubleFingerTwo = [[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(handleDoubleFingerEvent:)];
doubleFingerTwo.numberOfTouchesRequired = 2;
doubleFingerTwo.numberOfTapsRequired = 2;
doubleFingerTwo.delegate = self;
//如果不加下面的话,当单指双击时,会先调用单指单击中的处理,再调用单指双击中的处理
[singleFingerOne requireGestureRecognizerToFail:singleFingerTwo];
//同理双指亦是如此
[doubleFingerOne requireGestureRecognizerToFail:doubleFingerTwo];
[self.view addGestureRecognizer:singleFingerOne];
[self.view addGestureRecognizer:singleFingerTwo];
[self.view addGestureRecognizer:doubleFingerOne];
[self.view addGestureRecognizer:doubleFingerTwo];
//处理单指事件
- (void)handleSingleFingerEvent:(UITapGestureRecognizer *)sender
{
if (sender.numberOfTapsRequired == 1) {
//单指单击
NSLog(@"单指单击");
}else if(sender.numberOfTapsRequired == 2){
//单指双击
NSLog(@"单指双击");
}
}
//处理双指事件
- (void)handleDoubleFingerEvent:(UITapGestureRecognizer *)sender
{
if (sender.numberOfTapsRequired == 1) {
//双指单击
NSLog(@"双指单击");
}else if(sender.numberOfTapsRequired == 2){
//双指双击
NSLog(@"双指双击");
}
}
2.手指滑动事件
UISwipeGestureRecognizer *recognizer;
recognizer = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handleSwipeFrom:)];
[recognizer setDirection:(UISwipeGestureRecognizerDirectionRight)];
[[self view] addGestureRecognizer:recognizer];
recognizer = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handleSwipeFrom:)];
[recognizer setDirection:(UISwipeGestureRecognizerDirectionLeft)];
[[self view] addGestureRecognizer:recognizer];
recognizer = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handleSwipeFrom:)];
[recognizer setDirection:(UISwipeGestureRecognizerDirectionUp)];
[[self view] addGestureRecognizer:recognizer];
recognizer = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handleSwipeFrom:)];
[recognizer setDirection:(UISwipeGestureRecognizerDirectionDown)];
[[self view] addGestureRecognizer:recognizer];
-(void)handleSwipeFrom:(UISwipeGestureRecognizer *)recognizer
{
if(recognizer.direction==UISwipeGestureRecognizerDirectionLeft||recognizer.direction==UISwipeGestureRecognizerDirectionDown) {
NSLog(@"swipe left");
//执行程序
}
if(recognizer.direction==UISwipeGestureRecognizerDirectionRight||recognizer.direction == UISwipeGestureRecognizerDirectionUp) {
NSLog(@"swipe right");
//执行程序
}
}
0 0
- IOS开发—手势操作(点击+滑动)
- IOS手势操作:点击+滑动
- IOS手势操作:点击+滑动
- iOS手势识别使用(拖动,缩放,旋转,点击,长按,滑动,自定义手势)等等
- IOS开发笔记——禁用手势滑动返回功能
- iOS开发 手势滑动返回功能
- IOS开发(68)之捕获点击划屏手势
- iOS点击手势(tap)
- IOS Gesture手势(点击、捏合、滑动、长按、旋转、拖动)
- iOS:点击按钮或者手势控制界面左右滑动
- iOS开发(OC)——单击手势与tableView的点击冲突
- 滑动手势操作
- 学习笔记:ios手势(滑动)返回
- iOS 上下左右滑动手势
- ios添加滑动手势
- ios 左右滑动手势
- IOS-滑动手势添加
- iOS 禁止滑动手势
- 电的传播速度
- javaEE 使用过滤器压缩响应内容
- int 10 中断
- VRRP协议介绍
- Efficient data transfer through zero copy
- IOS开发—手势操作(点击+滑动)
- bulk load关于分隔符的问题
- Linux开机过程的分析(关于bootsect.S)
- HDU 3038 How Many Answers Are Wrong (带权并查集)
- POJ 1270 Follwing Orders
- git 记住用户名密码
- Google Chrome Source Code 源码下载
- 笔试遇到的编程题
- 把数据导出到Excel表格中的方式