UITapGestureRecognizer 的用法
来源:互联网 发布:如何运用淘宝直通车 编辑:程序博客网 时间:2024/05/07 06:18
原文地址:UITapGestureRecognizer 的用法 作者:ShangShang
//单指单击
2: UITapGestureRecognizer *singleFingerOne = [[UITapGestureRecognizer alloc] initWithTarget:self
3: action:@selector(handleSingleFingerEvent:)];
4: singleFingerOne.numberOfTouchesRequired = 1; //手指数
5: singleFingerOne.numberOfTapsRequired = 1; //tap次数
6: singleFingerOne.delegate = self;
7:
8: //单指双击
9: UITapGestureRecognizer *singleFingerTwo = [[UITapGestureRecognizer alloc] initWithTarget:self
10: action:@selector(handleSingleFingerEvent:)];
11: singleFingerTwo.numberOfTouchesRequired = 1;
12: singleFingerTwo.numberOfTapsRequired = 2;
13: singleFingerTwo.delegate = self;
14:
15: //双指单击
16: UITapGestureRecognizer *doubleFingerOne = [[UITapGestureRecognizer alloc] initWithTarget:self
17: action:@selector(handleDoubleFingerEvent:)];
18: doubleFingerOne.numberOfTouchesRequired = 2;
19: doubleFingerOne.numberOfTapsRequired = 1;
20: doubleFingerOne.delegate = self;
21:
22: UITapGestureRecognizer *doubleFingerTwo = [[UITapGestureRecognizer alloc] initWithTarget:self
23:action:@selector(handleDoubleFingerEvent:)];
24: doubleFingerTwo.numberOfTouchesRequired = 2;
25: doubleFingerTwo.numberOfTapsRequired = 2;
26: doubleFingerTwo.delegate = self;
27:
28: //如果不加下面的话,当单指双击时,会先调用单指单击中的处理,再调用单指双击中的处理
29: [singleFingerOne requireGestureRecognizerToFail:singleFingerTwo];
30: //同理双指亦是如此
31: [doubleFingerOne requireGestureRecognizerToFail:doubleFingerTwo];
32:
33: [self.view addGestureRecognizer:singleFingerOne];
34: [self.view addGestureRecognizer:singleFingerTwo];
35: [self.view addGestureRecognizer:doubleFingerOne];
36: [self.view addGestureRecognizer:doubleFingerTwo];
37:
38: [singleFingerOne release];
39: [singleFingerTwo release];
40: [doubleFingerOne release];
41: [doubleFingerTwo release];
处理事件的方法,代码:
1: //处理单指事件
2: - (void)handleSingleFingerEvent:(UITapGestureRecognizer *)sender
3: {
4: if (sender.numberOfTapsRequired == 1) {
5: //单指单击
6: NSLog(@"单指单击");
7: }else if(sender.numberOfTapsRequired == 2){
8: //单指双击
9: NSLog(@"单指双击");
10: }
11: }
12: //处理双指事件
13: - (void)handleDoubleFingerEvent:(UITapGestureRecognizer *)sender
14: {
15: if (sender.numberOfTapsRequired == 1) {
16: //双指单击
17: NSLog(@"双指单击");
18: }else if(sender.numberOfTapsRequired == 2){
19: //双指双击
20: NSLog(@"双指双击");
21: }
22: }
将相应代码复制到你的工程中即可使用,由于代码中已经有详细的解释说明,这里就不在重复解释了。
代码中只是列举了单指与双指对于单击或多击的处理,同理多指的操作需修改numberOfTouchesRequired属性,对点击的次数需修改numberOfTapsRequired属性。
对于其他手势例如UISwipeGestureRecognizer
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer的用法
- UITapGestureRecognizer 的用法
- UITapGestureRecognizer 的用法
- android开发 Json解析种类大全
- 阶乘的和
- 排序算法总结与思考
- 关于PHP页面跳转出现SESSION丢失问题
- Oracle Sequence
- UITapGestureRecognizer 的用法
- LIBXML学习之三--添加元素,属性;获取元素,属性
- 利用微信公共平台构建个性化响应式APP
- 任务二 输出三角星状图
- Memcached Java Client API详解
- DOS下使用日期生成文件名
- 前台的Project 里面加人员
- ecshop 函数列表大全
- DedeCMS 之 /templets模板目录 详情