iOS11開發教程(二十三)iOS11應用檢視實現按鈕的響應(3)
iOS11開發教程(二十三)iOS11應用檢視實現按鈕的響應(3)
2.使用程式碼新增按鈕實現的響應
使用程式碼新增的按鈕,實現響應需要使用到addTarget(_:action:for:)方法,其語法形式如下:
func addTarget(_ target: AnyObject?, action: Selector, for controlEvents: UIControlEvents)
其中,引數說明如下:
- target:表示目標物件。它是動作訊息的傳送方。
- action:表示選擇器,用來識別動作訊息。它不可以為空。
- controlEvents:表示控制元件事件。在iOS中有19種控制元件事件,如表2-4所示。
表2-4 控制元件事件
控制元件事件 |
解釋 |
touchDown |
單點觸控按下事件:使用者點觸螢幕,或者又有新手指落下的時候 |
touchDownRepeat |
多點觸控按下事件,點觸計數大於1:使用者按下第二、三、或第四根手指的時候。 |
touchDragInside |
當一次觸控在控制元件視窗內拖動時。 |
touchDragOutside |
當一次觸控在控制元件視窗之外拖動時。 |
touchDragEnter |
當一次觸控從控制元件視窗之外拖動到內部時。 |
touchDragExit |
當一次觸控從控制元件視窗內部拖動到外部時。 |
touchUpInside |
所有在控制元件之內觸控抬起事件。 |
touchUpOutside |
所有在控制元件之外觸控抬起事件(點觸必須開始與控制元件內部才會傳送通知)。 |
touchCancel |
所有觸控取消事件,即一次觸控因為放上了太多手指而被取消,或者被上鎖或者電話呼叫打斷。 |
valueChanged |
當控制元件的值發生改變時,傳送通知。用於滑塊、分段控制元件、以及其他取值的控制元件。開發者可以配置滑塊控制元件何時傳送通知 |
editingDidBegin |
當文字控制元件中開始編輯時傳送通知。 |
editingChanged |
當文字控制元件中的文字被改變時傳送通知。 |
editingDidEnd |
當文字控制元件中編輯結束時傳送通知。 |
editingDidEndOnExit |
當文字控制元件內通過按下Enter鍵(或等價行為)結束編輯時,傳送通知。 |
allTouchEvents |
通知所有觸控事件。 |
allEditingEvents |
通知所有關於文字編輯的事件。 |
applicationReserved |
提供一系列應用程式使用的控制事件的值 |
aystemReserved |
控制事件值的範圍內保留供內部使用的框架 |
AllEvents |
通知所有事件。 |
【示例2-5】以下將實現輕拍按鈕,改變主檢視背景顏色的功能。程式碼如下:
- import UIKit
- class ViewController: UIViewController {
- var isCyan:Bool=false
- override func viewDidLoad() {
- super.viewDidLoad()
- // Do any additional setup after loading the view, typically from a nib.
- let button=UIButton(frame: CGRect(x: 90, y: 545, width: 225, height: 30))
- button.setTitle("Tap me,Change View Color", for: UIControlState()) //設定按鈕的標題
- button.setTitleColor (UIColor.black, for: UIControlState()) //設定按鈕標題的顏
- self.view.addSubview(button)
- button.addTarget(self, action: #selector(ViewController.tapbutton), for: UIControlEvents.touchUpInside)
- }
- @objc func tapbutton(){
- if(isCyan){
- self.view.backgroundColor=UIColor.white
- isCyan=false
- }else{
- self.view.backgroundColor=UIColor.cyan
- isCyan=true
- }
- }
- ……
- }
此時執行程式,首先會看到如圖2.14的效果。當輕拍Tap me,Change View Color按鈕後,主檢視的背景變為青色,如圖2.15所示。當再一次輕拍Tap me,Change View Color按鈕,主檢視的背景顏色將會變回原來的白色。
圖2.14 執行效果 圖2.15 執行效果
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29597077/viewspace-2152283/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- iOS 11開發教程(二十二)iOS11應用檢視實現按鈕的響應(2)iOS
- iOS 11開發教程(二十一)iOS11應用檢視美化按鈕之實現按鈕的響應(1)iOS
- [譯] 用 Flutter 實現 Facebook 的響應式按鈕Flutter
- android音視訊指南-響應媒體按鈕Android
- HarmonyOS NEXT應用開發—自定義檢視實現Tab效果
- 在 js 裡定義按鈕的響應函式JS函式
- [開發教程]第9講:Bootstrap響應式佈局的實用類boot
- [開發教程]第21講:Bootstrap按鈕boot
- CocosCreator遊戲開發(五)實現技能按鈕遊戲開發
- IOS11新特性之maskedCornersiOS
- iOS11適配遇到的問題iOS
- odoo 給列表檢視新增按鈕實現資料檔案匯入Odoo
- elasticsearch的開發應用(3)Elasticsearch
- Vue 3 響應式原理及實現Vue
- curl命令檢視響應時間
- Web3的應用發展及其影響Web
- 用jMolecules框架實現DDD應用開發框架
- 短視訊系統,長按側滑實現刪除的按鈕
- python利用web3.py開發以太坊應用dapp的實戰教程PythonWebAPP
- CustomPainter——微信拍視訊按鈕效果實現AI
- [開發教程] 第17講:Bootstrap單選按鈕boot
- [開發教程]第22講:Bootstrap按鈕群組boot
- Java Chassis 3技術解密,流式響應如何簡化AI應用開發Java解密AI
- [教程] 實現視訊對話應用 HouseParty教程(二)—— 開始聊天|附 iOS 原始碼iOS原始碼
- iOS探索:UI檢視之事件傳遞&檢視響應iOSUI事件
- 如何給 SAP Fiori Elements 應用新增自定義按鈕
- MySQL / MariaDB 觸發器的建立、使用、檢視、刪除教程及應用場景實戰案例MySql觸發器
- Jquery實現的Switch開關按鈕(仿iOS開關)jQueryiOS
- iOS11 標題滾動變化iOS
- iOS MJRefresh適配ios11以及iPhoneXiOSiPhone
- 兄弟連百度應用開發系列視訊教程
- SAP UI5 應用開發教程之七十 - 如何使用按鈕控制元件觸發頁面路由跳轉試讀版UI控制元件路由
- [開發教程]第23講:Bootstrap帶下拉選單的按鈕boot
- 用CSS Houdini實現一個Material風格的按鈕CSS
- 語音交友app開發,點選按鈕出現彈窗的實現方式APP
- JavaFx 實現按鈕防抖Java
- win10 如何修復開始按鈕_win10開始按鈕沒反應怎麼辦Win10
- Simple WPF: WPF 實現按鈕的長按,短按功能