UI控件基本介绍

1:继承关系:网络

UI控件继承UIView,UIView继承UIResponder,UIResponder为用户操做的响应者。ide

 

2:控件分类:spa

活动控件:可触发各种事件。继承UIControl基类。继承

静态控件:基本用于显示,继承UIView基类。常见的有UILabel,UIImageView,UIScrollView。事件

被动控件:用于接收用户输入的值。好比UITextField.rem

 

我以为只要看某个UI控件继承哪一个基类就好了。继承UIControl的活动控件,有一些通用的行为与方法。get

 

3:继承UIControl基类的控件it

能完成一系列的用户交互。io

添加事件:event

-(void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)events;

控件状态:

Default:默认   Highlighted:高亮(用highlighted来判断)   Selected:选中(用selected来判断)   Disabled:禁用(用enabled来判断)。

以button为例,能够为不一样的状态设置不一样的现实。

事件说明:(摘自网络)

事件能够用逻辑OR合并在一块儿,所以能够再一次单独的addTarget调用中指定多个事件。下列事件为基类UIControl所支持,除非另有说明,也适用于全部控件。
UIControlEventTouchDown                       单点触摸按下事件:用户点触屏幕,或者又有新手指落下的时候。
IControlEventTouchDownRepeat              多点触摸按下事件,点触计数大于1:用户按下第2、3、或第四根手指的时候。

说明:屡次重复按下时,事件序列是这样的:

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资料。
相关文章
相关标签/搜索