1.UIControl概述
UIControl是处理事件的父类,它有三种事件相应的形式:基于触摸,基于值,基于编辑。下图为它的继承关系
它的主要作用是有处理子类事件的响应,它有两种常用的方法:
//添加事件
- (void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;
//移除事件
- (void)removeTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;
2.UIControl事件
- 基于触摸事件的触发
UIControlEventTouchDown //用户按下时触发
UIControlEventTouchDownRepeat //点击事件大于一次时触发
UIControlEventTouchDragInside //触摸在控件内拖动触发
UIControlEventTouchDragOutside//触摸在控件外拖动触发
UIControlEventTouchDragEnter //触摸在控件外拖动到控件里面时触发
UIControlEventTouchDragExit //触摸在控件内拖动到控件外面时触发
UIControlEventTouchUpInside //控件里面触摸抬起时触发
UIControlEventTouchUpOutside //控件里面触摸抬起时触发
UIControlEventTouchCancel
- 基于值的事件触发
UIControlEventValueChanged //当控件的值发生改变时触发,用于滑块,分段控件
- 基于编辑的事件触发
UIControlEventEditingDidBegin //文本控件中开始编辑时触发
UIControlEventEditingChanged //文本控件中编辑改变时触发
UIControlEventEditingDidEnd //文本控件中编辑结束时触发
UIControlEventEditingDidEndOnExit//文本控件中通过按下回车键结束编辑时触发
UIControlEventAllTouchEvents //所有触摸事件
UIControlEventAllEditingEvents //所有编辑事件
UIControlEventAllEvents //所以事件