iOS11开发教程(二十三)iOS11应用视图实现按钮的响应(3)
2.使用代码添加按钮实现的响应
使用代码添加的按钮,实现响应需要使用到addTarget(_:action:for:)方法,其语法形式如下:
func addTarget(_ target: AnyObject?, action: Selector, for controlEvents: UIControlEvents)
其中,参数说明如下:
表2-4 控件事件
|
控件事件 |
解释 |
|
touchDown |
单点触摸按下事件:用户点触屏幕,或者又有新手指落下的时候 |
|
touchDownRepeat |
多点触摸按下事件,点触计数大于1:用户按下第二、三、或第四根手指的时候。 |
|
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 运行效果
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29597077/viewspace-2152283/ ,如需转载,请注明出处,否则将追究法律责任。