Button的Touch事件

在我们平时的学习中和项目中,给UIButton添加点击事件我们绝大部分只用到了UIControlEventTouchUpInside ,最近在做一个项目时,里面用到了语音聊天,用一个Button完成了语音的录制。刚开始我的想法是给一个View加上一个LongPress手势。后来借鉴了别人的Demo,发现可以用一个Button的各种处理事件来完成。于是我对Button的Touch事件重新研究了一下,以下是我的记录!

1.UIControlEventTouchDown,在鼠标或者手指点击Button时触发.

2.UIControlEventTouchDownRepeat,指鼠标左键或手指连续多次重复按下(注:只是“按下”)的动作,比如,鼠标连续双击、三击、……、多次连击时触发。

3.UIControlEventTouchDragInside,指按下鼠标或手指,然后在控件边界范围内拖动。

4.UIControlEventTouchDragOutside,与UIControlEventTouchDragInside不同的是,拖动时,鼠标位于控件边界范围之外。但首先得有个UIControlEventTouchDown事件,然后接一个UIControlEventTouchDragInside事件,再接一个UIControlEventTouchDragExit事件,这时,鼠标已经位于控件外了,继续拖动就是UIControlEventTouchDragOutside事件了。

5. UIControlEventTouchDragEnter,指拖动动作中,从控件边界外到内时产生的事件。

6.UIControlEventTouchDragExit,指拖动动作中,从控件边界内到外时产生的事件。

7.UIControlEventTouchUpInside,指鼠标和手指在控件范围内抬起。

8.UIControlEventTouchUpOutside,指鼠标在控件边界范围外抬起.