标签:
1:继承关系:
UI控件继承UIView,UIView继承UIResponder,UIResponder为用户操作的响应者。
2:控件分类:
活动控件:可触发各类事件。继承UIControl基类。
静态控件:基本用于显示,继承UIView基类。常见的有UILabel,UIImageView,UIScrollView。
被动控件:用于接收用户输入的值。比如UITextField.
我觉得只要看某个UI控件继承哪个基类就行了。继承UIControl的活动控件,有一些通用的行为与方法。
3:继承UIControl基类的控件
能完成一系列的用户交互。
添加事件:
-(void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)events;
控件状态:
Default:默认 Highlighted:高亮(用highlighted来判断) Selected:选中(用selected来判断) Disabled:禁用(用enabled来判断)。
以button为例,可以为不同的状态设置不同的现实。
事件说明:(摘自网络)
事件可以用逻辑OR合并在一起,因此可以再一次单独的addTarget调用中指定多个事件。下列事件为基类UIControl所支持,除非另有说明,也适用于所有控件。
UIControlEventTouchDown 单点触摸按下事件:用户点触屏幕,或者又有新手指落下的时候。
IControlEventTouchDownRepeat 多点触摸按下事件,点触计数大于1:用户按下第二、三、或第四根手指的时候。
说明:多次重复按下时,事件序列是这样的:
UIControlEventTouchDown ->
(UIControlEventTouchUpInside) ->
UIControlEventTouchDown ->
UIControlEventTouchDownRepeat ->
(UIControlEventTouchUpInside) ->
UIControlEventTouchDown ->
UIControlEventTouchDownRepeat ->
(UIControlEventTouchUpInside) ->
。。。。。
UIControlEventTouchDragInside 当一次触摸在控件窗口内拖动时。
UIControlEventTouchDragOutside 当一次触摸在控件窗口之外拖动时。
UIControlEventTouchDragEnter 当一次触摸从控件窗口之外拖动到内部时。
UIControlEventTouchDragExit 当一次触摸从控件窗口内部拖动到外部时。
UIControlEventTouchUpInside 所有在控件之内触摸抬起事件。
UIControlEventTouchUpOutside 所有在控件之外触摸抬起事件(点触必须开始与控件内部才会发送通知)。
UIControlEventTouchCancel 所有触摸取消事件,即一次触摸因为放上了太多手指而被取消,或者被上锁或者电话呼叫打断。
UIControlEventTouchChanged 当控件的值发生改变时,发送通知。用于滑块、分段控件、以及其他取值的控件。你可以配置滑块控件何时发送通知,在滑块被放下时发送,或者在被拖动时发送。
UIControlEventEditingDidBegin 当文本控件中开始编辑时发送通知。
UIControlEventEditingChanged 当文本控件中的文本被改变时发送通知。UIControlEventEditingDidEnd当文本控件中编辑结束时发送通知。
UIControlEventEditingDidOnExit 当文本控件内通过按下回车键(或等价行为)结束编辑时,发送通知。
UIControlEventAlltouchEvents 通知所有触摸事件。
UIControlEventAllEditingEvents 通知所有关于文本编辑的事件。
UIControlEventAllEvents 通知所有事件。除了默认事件以外,自定义控件类还可以用0x0F000000到0x0FFFFFFF之间的值,来定义他们自己的时间。
要删除一个或多个事件的相应动作,可以使用UIControl类的removeTarget方法。使用nil值就可以将给定事件目标的所有动作删除
修改控件显示外观,可以修改控件的layer。具体查layer资料。
UI控件基本介绍
标签:
原文地址:http://www.cnblogs.com/xingyuwangchuan/p/4515916.html