UIGestureRecognizer学习之——UITapGestureRecognizer
来源:互联网 发布:移动网络网页游戏 编辑:程序博客网 时间:2024/06/05 10:52
UITapGestureRecognizer是UIGestureRecognizer的子类。
UITapGestureRecognizer除了继承UIGestureRecognizer的属性外,还提供如下俩个属性:
numberOfTapRequired: //指定该手势处理器只处理几次触碰事件numberOfTouchesRequired: //指定该手势处理器只处理几个手指的触碰事件
示例:为应用中间的UIView添加UITapGestureRecognizer手势处理器,通过该手势处理器来处理用户的点击手势,程序会在界面上方的UILabel中显示用户的手势。
@interface FKViewController : UIViewController@property (strong, nonatomic) IBOutlet UIView *gv;@property (strong, nonatomic) IBOutlet UILabel *label;@end
@implementation FKViewController- (void)viewDidLoad{ [super viewDidLoad]; self.view.backgroundColor = [UIColor lightGrayColor]; self.gv.layer.borderWidth = 2; self.gv.layer.cornerRadius = 6; // 设置gv控件支持用户交互 self.gv.userInteractionEnabled = YES; // 设置gv控件支持多点触碰 self.gv.multipleTouchEnabled = YES; for (int i = 1 ; i < 6 ; i++) { // 创建手势处理器,指定使用该控制器的handleTap:方法处理手势 UITapGestureRecognizer* gesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)]; // 设置该点击手势处理器只处理i次连击事件 gesture.numberOfTapsRequired = i; // 设置该点击手势处理器只处理2个手指的触碰事件 gesture.numberOfTouchesRequired = 2; // 为gv控件添加手势处理器。 [self.gv addGestureRecognizer:gesture]; }}// 实现手势处理器的方法,该方法应该声明一个形参。// 当该方法被激发时,手势处理器会作为参数传给该方法的参数。- (void) handleTap:(UITapGestureRecognizer*)gesture{ NSUInteger touchNum = gesture.numberOfTouches; NSUInteger tapNum = gesture.numberOfTapsRequired; self.label.text = [NSString stringWithFormat: @"用户使用%d个手指进行触碰,触碰次数为:%d" , touchNum , tapNum]; // 指定2秒后清除label的文本 [self.label performSelector:@selector(setText:) withObject:@"" afterDelay:2];}@end
上面程序中一共创建了5个手势处理器,这些手势处理器分别用于检测用户的1次、2次、3次、4次、5次点击。(如果在模拟器上运行,按下option键即可与鼠标配合模拟出两个手指的效果)
1 0
- UIGestureRecognizer学习之——UITapGestureRecognizer
- ios-day17-05(手势识别器(UIGestureRecognizer)之敲击——UITapGestureRecognizer)
- iOS学习之——UIGestureRecognizer
- UIGestureRecognizer学习之——UIPinchGestureRecognizer
- UIGestureRecognizer学习之—— UIRotationGestureRecognizer
- UIGestureRecognizer学习之——UISwipeGestureRecognizer
- UIGestureRecognizer学习之——UIPanGestureRecognizer
- UIGestureRecognizer学习之—— UILongPressGestureRecognizer
- ios知识点 之——手势学习 UIGestureRecognizer
- IOS开发之手势——UIGestureRecognizer
- IOS开发之手势——UIGestureRecognizer
- IOS开发之手势—UIGestureRecognizer 共存
- 手势识别器(UIGestureRecognizer)- UITapGestureRecognizer(敲击)
- iOS学习笔记18—UITapGestureRecognizer 的用法
- 手势——UIGestureRecognizer
- iOS——UIGestureRecognizer
- IOS开发之手势——UIGestureRecognizer 共存
- IOS开发之手势——UIGestureRecognizer 共存
- 坚定落实习大大的科技强国信念,智应在IT创新领域积极奋战
- 什么是Java中的内存泄露
- android6.0 PowerManagerService状态分析
- Node.js与Redis,Error Error: Redis connection to 127.0.0.1:6379 failed
- Tcp为什么要三次握手四次挥手
- UIGestureRecognizer学习之——UITapGestureRecognizer
- idea tomcat 虚拟目录的创建
- 图的邻接表数据结构的C++实现方法
- 开发者的协助工具
- 使用Camera2 替代过时的Camera API
- ifram自动获取高度
- 错误:espliseappcompat_v7] ERROR: In <declare-styleable> MenuView, unable to find attribute android:pre
- LinearLayoutCompat源码浅析
- 获取Iphone里面的数据