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資料。
相關文章
相關標籤/搜索