IOS学习之手势检测
来源:互联网 发布:请问淘宝店怎么开 编辑:程序博客网 时间:2024/05/17 04:08
1、概述:
UISwipeGestuRecognizer: 滑动(快速滑动)
UITapGestureRecognizer: 点击(轻点)
UIPinchGestureRecognizer: 捏合
UIRotationGestureRecognizer: 旋转
UIPanGestureRecognizer: 拖动(移动速率较慢)
UILogPressGestureRecognizer: 长按
2、工具
Xcode:7.2,语言:Swift
3、滑动 (UISwipeGestureRecognizer)
let swipe = UISwipeGestureRecognizer(target: self, action: "Swipe"); /// 定义滑动方向 swipe.direction = UISwipeGestureRecognizerDirection.Down; self.view.addGestureRecognizer(swipe);这里的代码很简单。初始化时,设置了target 和 action。同时, 调用View的addGestureRecognizer方法,表示添加一个手势检测。action的方法如下:
func Swipe() { print("swipe"); }4、 轻点、捏合、旋转
/* 轻点 */ let tapSingle = UITapGestureRecognizer(target: self, action: "tapSingle"); /// 设置触摸点数 tapSingle.numberOfTapsRequired = 1; /// 设置点击次数 tapSingle.numberOfTouchesRequired = 1; let tapDouble = UITapGestureRecognizer(target: self, action: "tapDouble"); tapDouble.numberOfTapsRequired = 2; tapDouble.numberOfTouchesRequired = 1; /// 双击事件不触发单击事件 tapSingle.requireGestureRecognizerToFail(tapDouble); /// 添加 view.addGestureRecognizer(tapDouble); view.addGestureRecognizer(tapSingle); /* 捏合 */ let pinch = UIPinchGestureRecognizer(target: self, action: "pinchTouch:"); view.addGestureRecognizer(pinch); /* 旋转手势 */ let retation = UIRotationGestureRecognizer(target: self, action: "retation:"); view.addGestureRecognizer(retation);
下面是action代码:
func retation(recognizer:UIRotationGestureRecognizer) { print(recognizer.rotation * (180 / CGFloat(M_PI))); } func pinchTouch(recognizer: UIPinchGestureRecognizer) { print(recognizer.scale); } func tapDouble() { print("Double"); } func tapSingle() { print("single"); }5、拖动
/* 拖动手势 */ rect = UIView(frame:CGRectMake(0, 0, 100, 100)); rect.center = view.center; rect.backgroundColor = UIColor.greenColor(); view.addSubview(rect); let pan = UIPanGestureRecognizer(target: self, action: "panDid:"); pan.maximumNumberOfTouches = 1; rect.addGestureRecognizer(pan);action代码:
func panDid(recognizer:UIPanGestureRecognizer) { let point = recognizer.locationInView(self.view); rect.center = point; }运行结果(可以拖动有色块移动) :
1 0
- IOS学习之手势检测
- IOS的手势检测
- IOS手势检测
- ios学习之UISwipeGestureRecognizer手势识别
- ios学习笔记之手势识别
- IOS开发之手势的学习
- IOS学习笔记之触摸与手势
- IOS学习之——手势解锁
- Swift iOS- 手势检测详解
- Android学习笔记之手势(Gesture)检测
- 安卓之手势检测
- ios手势学习笔记
- iOS 手势的学习
- iOS学习-手势
- iOS手势学习
- iOS手势学习笔记
- IOS 手势学习网址
- iOS手势学习
- Hibernate中的HQL大全
- hibernate框架中save无法更新
- java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathLis。。。
- sqlserver2005连接的时候没有服务器名称
- CmakeList.txt学习 简单说明(PCL OpenCV 实例)
- IOS学习之手势检测
- 计算帧间动画的时间方法
- CC2541 BLE源码阅读知识积累之OSAL小结
- CSS3之边框图片
- ubuntu12替换了java,但eclipse仍然提示java版本为1.6,需要更高版本的java
- Java集合框架复习之Collection接口,iterator接口,iterable接口(二)
- 滚动条
- 讲讲“工业4.0”的故事
- myself template