手势识别 ios
2015-09-10 20:53
295 查看
/** UIKit中包含了UIGestureRecognizer类,用于检测发生在设备中手势。 UIGestureRecognizer是一个抽象类,定义了所有手势的基本行为,他有下面一些子类用于处理具体的手势: 1.拍击UITapGestureRecognizer(任意次数的拍击) 2.向里或向外捏 UIPinchGestureRecognizer(用于缩放) 3.摇动或者拖拽 UIPanGestureRecognizer 4.滑动 UISwipeGestureRecoginzer(以任意方向) 5.旋转 UIRotationGestureRecoginzer (手指朝相反方向移动) 6.长按 UILongPressGestureRecoginzer 对于不同类型的手势识别器,具有不同的配置属性。比如UITapGestureRecognizer,可以配置拍击次数。界面接收到手势之后,可以发送一 个消息,用于处理响应手势动作后的任务。当然,不同的手势识别器,发送的消息方法也会有所不同。下面列举几个具体示例代码: */ #pragma mark 一个手指,拍击两次手势 -(void)test1{ UITapGestureRecognizer *oneFingerTwoTaps = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(oneFingerTwoTaps)]; // Set required taps and number of touches //敲击次数 随意设,不过一般情况都是不多于2此 [oneFingerTwoTaps setNumberOfTapsRequired:2]; //敲击手指数 随意设,不过要考虑用户使用 [oneFingerTwoTaps setNumberOfTouchesRequired:1]; // Add the gesture to the view //添加到View [self.view addGestureRecognizer:oneFingerTwoTaps]; } //消息方法 -(void)oneFingerTwoTaps { NSLog(@"敲击了。。。"); } #pragma mark 一个手指滑动手势 -(void)test2 { UISwipeGestureRecognizer *oneFingerSwipeUp = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(oneFingerSwipeUp:)]; //滑动方向<#(UISwipeGestureRecognizerDirection)#>枚举类型 /* UISwipeGestureRecognizerDirectionRight = 1 << 0, UISwipeGestureRecognizerDirectionLeft = 1 << 1, UISwipeGestureRecognizerDirectionUp = 1 << 2, UISwipeGestureRecognizerDirectionDown = 1 << 3 */ [oneFingerSwipeUp setDirection:UISwipeGestureRecognizerDirectionUp ]; [self.view addGestureRecognizer:oneFingerSwipeUp]; } //消息方法 -(void)oneFingerSwipeUp:(UISwipeGestureRecognizer *)recognizer { CGPoint point = [recognizer locationInView:self.view]; NSLog(@"上滑 - start location: %f,%f", point.x, point.y); } #pragma mark 旋转手势 -(void)test3 { UIRotationGestureRecognizer *twoFingersRoatate = [[UIRotationGestureRecognizer alloc]initWithTarget:self action:@selector(twoFingersRotate:)]; [self.view addGestureRecognizer:twoFingersRoatate]; } -(void)twoFingersRotate:(UIRotationGestureRecognizer *)recognizer { NSLog(@"Rotation in degrees since last change: %f", [recognizer rotation] * (180 / M_PI)); }
相关文章推荐
- IOS开发之 ---- 苹果系统代码汉字转拼音
- iOS远程推送
- Cordova for iOS
- IOS开发-琐碎的知识点总结1
- iOS 导入相册视频文件
- IOS开发 IBOutlet与IBAction
- iOS开发系列—内存管理
- iOS开发 Debug-发布时取消打印(NSLog)
- iOS中正确的截屏姿势
- iOS 数据持久化-----plist
- iOS中计算文本的宽高
- iOS 相册 相机
- iOS:视图切换的第一种方式:模态窗口
- bullet, iOS真机编译错误error: identifier or immediate expression expected解决方法
- ios开发细节及相关框架
- iOS 笔记总结一
- iOS开发-Xcode Debug、Release、Archive、Profile、Analyze概念解释
- IOS - svn软件Cornerstone使用
- 获取iOS设备的相关信息
- iOS知识小集 第四期(2015.08.15)