UIButton的点击状态

转载 2016年08月30日 16:10:21
摘要
* UIControlEventTouchDown * UIControlEventTouchDownRepeat * UIControlEventTouchDragInside * UIControlEventTouchDragOutside * UIControlEventTouchDrag...

UIButton的点击态

UIButton的点击事件状态UIControlEvents主要有如下几种:

  • UIControlEventTouchDown = 1 << 0, // on all touch downs
  • UIControlEventTouchDownRepeat = 1 << 1, // on multiple touchdowns (tap count > 1)
  • UIControlEventTouchDragInside = 1 << 2,
  • UIControlEventTouchDragOutside = 1 << 3,
  • UIControlEventTouchDragEnter = 1 << 4,
  • UIControlEventTouchDragExit = 1 << 5,
  • UIControlEventTouchUpInside = 1 << 6,
  • UIControlEventTouchUpOutside = 1 << 7,
  • UIControlEventTouchCancel

图片丢失

如上图

UIControlEventTouchDrag* 相关事件

注意:在下面演示过程中,1~4过程中要保持手指一直子啊屏幕上, 不要抬起手指

1.当手指在屏幕 A点 上按下去,就会触发这个事件 UIControlEventTouchDown

2.紧接着,不要松开手指,从 A点 滑动到 B点 ,这段事件内,会不断的触发UIControlEventTouchDragInside 事件

3.紧接着,不要松开手指,从 B点 滑动到 D点 ,这段时间内会触发3个事件:

注意: C点 是UIButton的边界点

从 B点 滑动到 C点 过程中, 会不断的触发 UIControlEventTouchDragInside
当经过 C点 时,会触发一次 UIControlEventTouchDragExit 事件
当从 C点 滑动到 D点 过程中,会不断的触发 UIControlEventTouchDragOutside

4.紧接着,不要松开手指,从 D点 返回,滑动到 B点 ,这段时间内会触发3个事件:

从 D点 滑动到 C点 过程中, 会不断的触发 UIControlEventTouchDragOutside
当经过 C点 时,会触发一次 UIControlEventTouchDragEnter 事件
当从 C点 滑动到 D点 过程中,会不断的触发 UIControlEventTouchDragInside

UIControlEventTouchUpInside

在UIButton上按下手指后,不论你是否拖动手指,或者拖到手指到UIButton外, 只要你最终抬起手指的时刻,你的手指是处在UIButton  ,就会触发此事件

例如,以下操作均会触发此事件:

  1. 在 A点 按下手指后,然后抬起手指,就和平常的单击事件一样;
  2. 在 A点 按下手指后,拖动手指到B点,然后抬起手指;
  3. 在 B点 按下手指后,拖动手指到 D点 ,然后再拖回 B点 ,然后抬起手指

UIControlEventTouchUpOutside

在UIButton上按下手指后,拖动手指,无论你拖动手指进出UIButton多少次, 只要你最终抬起手指的时刻,你的手指是处在UIButton  ,就会触发此事件

例如,以下操作均会触发此事件:

  1. 在 B点 按下手指后,滑动手指到 D点 后,抬起手指;
  2. 在 B点 按下手指后,滑动手指到 D点 -》A点 -》 B点 -》 D点 , 只要最终抬起手指在UIButton外(即 D点 )即可。

UIControlEventTouchCancel

按钮的触摸事件被打断,会触发此事件。

手指在 UIButton 内按钮, 这期间可以任意滑动,但不要抬起手指, 在抬起手指之前触摸事件被打断,就会触发此事件;
例如,在抬起手指前,突然弹出一个UIAlertView时,就会打断按钮的触摸事件

UIControlEventTouchDownRepeat

多点触摸按下事件,点触计数大于1:用户按下第二、三、或第四根手指的时候。

UIView的Touch事件UIControlEvents详解

首先,UIControlEvents有这个几种: UIControlEventTouchDown           = 1 UIControlEventTouchDownRepeat ...
  • heng615975867
  • heng615975867
  • 2014年09月16日 18:52
  • 39213

Objective-C之KVO(键值监听)

一,KVO的定义 KVO(Key-Value Observing),俗称键值监听。它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,K...
  • LXL_815520
  • LXL_815520
  • 2016年04月14日 20:07
  • 9007

ios中UIButton选中状态切换

关于UIButton的事件枚举有许多,平时用的少所以很多的都不是很清楚,今天了解了下,看了以前的代码,觉得在UIButton选中时操作写了许多冗余代码,而忽略了UIButton一个很重要的属性,如下:...
  • chuming0311
  • chuming0311
  • 2015年11月10日 11:26
  • 15363

UIButton 的所有点击事件及状态总结

UIControlEventTouchDown UIControlEventTouchDown :单点触摸按下事件:用户点触屏幕,或者又有新手指落下的时候。 UIControlEventTouchD...
  • MLtianya
  • MLtianya
  • 2016年02月01日 16:04
  • 2569

UIButton的点击状态

摘要 * UIControlEventTouchDown * UIControlEventTouchDownRepeat * UIControlEventTouchDragInside * UICo...
  • u011864662
  • u011864662
  • 2016年08月30日 16:10
  • 271

UIButton的状态

UIButton的状态 •normal(普通状态) Ø默认情况 Ø对应的枚举常量:UIControlStateNormal •highlighted(高亮状态) Ø按钮被按下去的时候(手指还...
  • yurenfan
  • yurenfan
  • 2017年01月13日 14:36
  • 331

iOS UIButton实现点击后两种状态的相互改变效果

UIButton实现点击后两种状态的相互改变效果        产品要实现点击一个按钮收藏,再点击同一个按钮取消收藏这样的功能,具体代码如下: 1.创建一个你所需要的UIButton ...
  • u014536527
  • u014536527
  • 2015年04月23日 11:50
  • 1989

UIButton选中状态下的点击

UIButton选中状态下的点击 在类似点赞或切换浏览模式等功能的时候,需要用到button的选中状态:即点击后按钮切换图片,并保持这个状态,直到下一次点击. 如: ...
  • qq_32812243
  • qq_32812243
  • 2016年03月08日 20:08
  • 552

iOS按钮各个状态浅析

1.UIControlStateNormal 除了Highlighted,Disabled和Selected这三种状态以外,按钮始终处于Normal状态。 此时Normal状态的按钮是可以点击并且...
  • qq_25591667
  • qq_25591667
  • 2016年10月30日 17:03
  • 1052

iOS之按钮UIBUtton的常用属性及方法总结(一)

// 实例化一个button     UIButton *headerButton = [[UIButton alloc] init];          self.headerButton ...
  • u011146511
  • u011146511
  • 2016年04月24日 13:41
  • 519
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UIButton的点击状态
举报原因:
原因补充:

(最多只允许输入30个字)