UIControl是有控制功能的视图(⽐如UIButton、UISlider、UISegmentedControl等)的⽗类
只要跟控制有关的控件都是继承于该类
UIControl这个类通常我们并不直接使⽤,⽽是使⽤其⼦ 类
事件响应的三种形式:基于触摸、基于值、基于编辑
- UIControl常用方法:
1.添加⼀个事件
参数说明:target为⽬标对象;action为⽅法选择器; controlEvents为触发事件。
- (void)addTarget:(id)target action:(SEL)action forControlEvents: (UIControlEvents)controlEvents;
2.移除⼀个事件
参数说明::target为⽬标对象;action为⽅法选择器; controlEvents为触发事件。
- (void)removeTarget:(id)target action: (SEL)action forControlEvents: (UIControlEvents)controlEvents;
- 事件处理
//当触摸从控件内部拖动到外部时触发 UIControlEventTouchDragExit //当控件之内触摸抬起时触发 UIControlEventTouchUpInside //控件之外触摸抬起时触发 UIControlEventTouchUpOutside //触摸取消事件,设备被上锁或者电话呼叫打断
UIControlEventTouchCancel
//⽤户按下时触发 UIControlEventTouchDown //点击计数⼤于1时触发 UIControlEventTouchDownRepeat //当触摸在控件内拖动时触发 UIControlEventTouchDragInside //当触摸在控件之外拖动时触发 UIControlEventTouchDragOutside //当触摸从控件之外拖动到内部时触发
UIControlEventTouchDragEnter
//当控件的值发⽣变化时。⽤于滑块、分段控件等控件。 UIControlEventValueChanged //⽂本控件中开始编辑时 UIControlEventEditingDidBegin //⽂本控件中的⽂本被改变 UIControlEventEditingChanged //⽂本控件中编辑结束时 UIControlEventEditingDidEnd //⽂本控件内通过按下回⻋键结束编辑时
UIControlEventEditingDidOnExit
//所有触摸事件 UIControlEventAllTouchEvents //⽂本编辑的所有事件 UIControlEventAllEditingEvents //所有事件
UIControlEventAllEvents