iOS 轻击、触摸和手势的检测
//设定一个实例变量存储手指之间的其起始距离
@property (assign, nonatomic) CGFloat initialFontSize; //调用:
UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizeralloc]
initWithTarget:selfaction:@selector(doPinch:)];
[self.viewaddGestureRecognizer:pinch]; //实现方法:
- (void)doPinch:(UIPinchGestureRecognizer *)pinch {
if (pinch.state == UIGestureRecognizerStateBegan) {
initialFontSize = label.font.pointSize;//开始时的
} else {
label.font = [label.fontfontWithSize:initialFontSize * pinch.scale];
}
}
//调用:
UITapGestureRecognizer *singleTap =
[[UITapGestureRecognizeralloc] initWithTarget:self
action:@selector(tap1)];
singleTap.numberOfTapsRequired = ;
singleTap.numberOfTouchesRequired = ;
[self.viewaddGestureRecognizer:singleTap]; UITapGestureRecognizer *doubleTap =
[[UITapGestureRecognizeralloc] initWithTarget:self
action:@selector(tap2)];
doubleTap.numberOfTapsRequired = ;
doubleTap.numberOfTouchesRequired = ;
[self.viewaddGestureRecognizer:doubleTap];
[singleTap requireGestureRecognizerToFail:doubleTap]; //这句是最主要的 UITapGestureRecognizer *tripleTap =
[[UITapGestureRecognizeralloc] initWithTarget:self
action:@selector(tap3)];
tripleTap.numberOfTapsRequired = ;
tripleTap.numberOfTouchesRequired = ;
[self.viewaddGestureRecognizer:tripleTap];
[doubleTap requireGestureRecognizerToFail:tripleTap]; UITapGestureRecognizer *quadrupleTap =
[[UITapGestureRecognizeralloc] initWithTarget:self
action:@selector(tap4)];
quadrupleTap.numberOfTapsRequired = ;
quadrupleTap.numberOfTouchesRequired = ;
[self.viewaddGestureRecognizer:quadrupleTap];
[tripleTap requireGestureRecognizerToFail:quadrupleTap]; //不同点击触发的事件:
- (void)tap1 {
singleLabel.text = @"Single Tap Detected";
[selfperformSelector:@selector(eraseMe:)
withObject:singleLabelafterDelay:1.6f];
}
- (void)tap2 {
doubleLabel.text = @"Double Tap Detected";
[selfperformSelector:@selector(eraseMe:)
withObject:doubleLabelafterDelay:1.6f];
}
- (void)tap3 {
tripleLabel.text = @"Triple Tap Detected";
[selfperformSelector:@selector(eraseMe:)
withObject:tripleLabelafterDelay:1.6f];
}
- (void)tap4 {
quadrupleLabel.text = @"Quadruple Tap Detected";
[selfperformSelector:@selector(eraseMe:)
withObject:quadrupleLabelafterDelay:1.6f];
} //清除内容
- (void)eraseMe:(UILabel *)label {
label.text = @"";
}
iOS 轻击、触摸和手势的检测的更多相关文章
- IOS开发之---触摸和手势
Touch:在与设备的多点触摸屏交互时生成. 响应者对象 响应者对象就是可以响应事件并对事件作出处理.在iOS中,存在UIResponder类,它定义了响应者对象的所有方法.UIApplication ...
- IOS 手势-轻点、触摸、手势、事件
1.概念 手势是从你用一个或多个手指接触屏幕时开始,直到手指离开屏幕为止所发生的所有事件.无论手势持续多长时间,只要一个或多个手指仍在屏幕上,这个手势就存在. 触摸是指把手指放到IOS设备的屏幕上,从 ...
- iOS之触摸及手势
触摸事件 iOS中的事件: 在用户使用app过程中,会产生各种各样的事件.iOS中的事件可以分为3大类型: view的触摸事件处理: 响应者对象: 在iOS中不是任何对象都能处理事件,只有继承了 ...
- IOS高级编程之一:多点触摸与手势验证
前段时间学习了IOS基础的一些控件的使用作为基础,现在开始学习一些高级编程的东西,手势处理器.文件I/O.定位.网络通信.多线程这些,分享一些学习的重点,还是很实用的. 今天就先介绍个简单点得,手势处 ...
- iOS开发系列--触摸事件、手势识别、摇晃事件、耳机线控
-- iOS事件全面解析 概览 iPhone的成功很大一部分得益于它多点触摸的强大功能,乔布斯让人们认识到手机其实是可以不用按键和手写笔直接操作的,这不愧为一项伟大的设计.今天我们就针对iOS的触摸事 ...
- 转发:iOS开发系列--触摸事件、手势识别、摇晃事件、耳机线控
-- iOS事件全面解析 转载来自崔江涛(KenshinCui) 链接:http://www.cnblogs.com/kenshincui/p/3950646.html 概览 iPhone的成功很大一 ...
- iOS学习之触摸事件
触摸事件 iOS中的事件: 在用户使用app过程中,会产生各种各样的事件.iOS中的事件可以分为3大类型: view的触摸事件处理: 响应者对象: 在iOS中不是任何对象都能处理事件,只有继承了UIR ...
- 【iOS系列】-触摸事件与手势识别
[iOS系列]-触摸事件与手势识别 第一:触摸事件 一根手指触摸屏幕时,会创建一个与手指相关联的UITouch对象 UIEvent:称为事件对象,记录事件产生的时刻和类型 两根手指同时触摸一个view ...
- IOS 点击空白处隐藏键盘的几种方法
IOS 点击空白处隐藏键盘的几种方法 IOS7 点击空白处隐藏键盘的几种方法 IOS开发中经常要用到输入框,默认情况下点击输入框就会弹出键盘,但是必须要实现输入框return的委托方法才能 ...
随机推荐
- Eclipse使用JDBC小案例
JDBC(Java Database Connectivity:Java访问数据库的解决方案)定义一套标准接口,即访问数据库的通用API,不同数据库厂商根据各自数据的特点去实现这些接口. JDBC是J ...
- docker学习------记录centos7.5下docker安装更换国内源的处理过程
一.centos7.5下更换阿里源 1.装好centos7.5镜像,将yum源更换为阿里源 第一步:刚出的centos7.5是解析不到阿里的东西的,所以找了台centos7.4,下载一些包 (1) 下 ...
- MyEclipse打不开 报xxxxxx. log。
1.找到MyEcliPse安装目录下configuration文件夹 打开 2.删除org.eclipse.update这个文件夹 3.再打开org.eclipse.osgi/.manager 4.删 ...
- Mysql 层级、执行顺序、执行计划分析
逻辑分层 下面是MySQL的逻辑分层图: 连接层:连接与线程处理,这一层并不是MySQL独有,一般的基于C/S架构的都有类似组件,比如连接处理.授权认证.安全等. 服务层:包括缓存查询.解析器.优化器 ...
- elasticsearch 踩坑
1.elasticsearch head安装 集群连不上,修改配置 add http.cors.enabled: true you must also set http.cors.allow-orig ...
- springboot中使用kindeditor富文本编辑器实现博客功能
kindeditor在之前已经用过,现在在springboot项目中使用.并且也在里面使用了图片上传以及回显等功能. 其实主要的功能是图片的处理:kindeditor对输入的内容会作为html标签处理 ...
- LeetCode第十九题-链表节点的删除
Remove Nth Node From End of List 问题简介;给定链表,从链表末尾删除第n个节点并返回其头部 例: 给定链表:1-> 2-> 3-> 4-> 5, ...
- 前端笔记之JavaScript(五)关于数组和字符串那点事
一.数组 1.1数组概念 数组(array)是一个有序的数据集合.说白了,数组就是一组数.数组内部可以存放一个或多个单独的数据,整体组成数组. 定义数组最简单的方式:数组字面量. 数组的字面量“[]” ...
- 在JavaScript中,如何判断数组是数组?
如果你没有注意过这个问题,那么这个标题应该会让你感到困惑,判断数据类型这么基础的问题能有什么坑呢? 少年,你不能太天真了,我们朝夕面对的这门语言,可是JavaScript呀,任何你觉得已经习以为常的东 ...
- 【easy】532. K-diff Pairs in an Array
这道题给了我们一个含有重复数字的无序数组,还有一个整数k,让我们找出有多少对不重复的数对(i, j)使得i和j的差刚好为k.由于k有可能为0,而只有含有至少两个相同的数字才能形成数对,那么就是说我们需 ...