iOS11開發教程(二十三)iOS11應用視圖實現按鈕的響應(3)app
2.使用代碼添加按鈕實現的響應框架
使用代碼添加的按鈕,實現響應須要使用到addTarget(_:action:for:)方法,其語法形式以下:ide
func addTarget(_ target: AnyObject?, action: Selector, for controlEvents: UIControlEvents)spa
其中,參數說明以下:.net
表2-4 控件事件對象
控件事件教程 |
解釋事件 |
touchDownci |
單點觸摸按下事件:用戶點觸屏幕,或者又有新手指落下的時候開發 |
touchDownRepeat |
多點觸摸按下事件,點觸計數大於1:用戶按下第2、3、或第四根手指的時候。 |
touchDragInside |
當一次觸摸在控件窗口內拖動時。 |
touchDragOutside |
當一次觸摸在控件窗口以外拖動時。 |
touchDragEnter |
當一次觸摸從控件窗口以外拖動到內部時。 |
touchDragExit |
當一次觸摸從控件窗口內部拖動到外部時。 |
touchUpInside |
全部在控件以內觸摸擡起事件。 |
touchUpOutside |
全部在控件以外觸摸擡起事件(點觸必須開始與控件內部纔會發送通知)。 |
touchCancel |
全部觸摸取消事件,即一次觸摸由於放上了太多手指而被取消,或者被上鎖或者電話呼叫打斷。 |
valueChanged |
當控件的值發生改變時,發送通知。用於滑塊、分段控件、以及其餘取值的控件。開發者能夠配置滑塊控件什麼時候發送通知 |
editingDidBegin |
當文本控件中開始編輯時發送通知。 |
editingChanged |
當文本控件中的文本被改變時發送通知。 |
editingDidEnd |
當文本控件中編輯結束時發送通知。 |
editingDidEndOnExit |
當文本控件內經過按下回車鍵(或等價行爲)結束編輯時,發送通知。 |
allTouchEvents |
通知全部觸摸事件。 |
allEditingEvents |
通知全部關於文本編輯的事件。 |
applicationReserved |
提供一系列應用程序使用的控制事件的值 |
aystemReserved |
控制事件值的範圍內保留供內部使用的框架 |
AllEvents |
通知全部事件。 |
【示例2-5】如下將實現輕拍按鈕,改變主視圖背景顏色的功能。代碼以下:
此時運行程序,首先會看到如圖2.14的效果。當輕拍Tap me,Change View Color按鈕後,主視圖的背景變爲青色,如圖2.15所示。當再一次輕拍Tap me,Change View Color按鈕,主視圖的背景顏色將會變回原來的白色。
圖2.14 運行效果 圖2.15 運行效果