swift4.0 方法監聽Selector寫法總結
import UIKit
class MainViewController: UITabBarController {
//MARK:屬性 懶載入
lazy var composeBtn = UIButton(composeForeImageName: "tabbar_compose_icon_add", composeBackImageName: "tabbar_compose_button")
//MARK:重寫方法
override func viewDidLoad() {
super.viewDidLoad()
tabBar.addSubview(composeBtn)
}
override func viewWillLayoutSubviews() {
composeBtn.center = CGPoint(x: tabBar.center.x, y:tabBar.bounds.height * 0.5)
//方法1:Selector("方法名") Swift已經不推薦使用,會被提示改成第二種代替
// composeBtn.addTarget(self, action:Selector(("composeBtnClick")), for: .touchUpInside)
//方法2:Selector("類名.方法名") 推薦寫法
composeBtn.addTarget(self, action:#selector(MainViewController.composeBtnClick), for: .touchUpInside)
//方法3:"方法名"
// composeBtn.addTarget(self, action:"composeBtnClick", for: .touchUpInside)
}
}
//MARK:事件監聽
extension MainViewController{
//這裡必須要加@objc 否則會崩潰
@objc func composeBtnClick(){
print("composeBtnClick")
}
}
相關文章
- ORACLE動態監聽總結Oracle
- oracle之 監聽器無法啟動的幾個原因總結Oracle
- 過濾器和監聽器總結過濾器
- Swift4.0 便利建構函式的寫法Swift函式
- MongoDB監控方法總結MongoDB
- localeStorage 當前標籤頁變化監聽不到,只能監聽不同標籤頁變化,自己寫方法監聽
- oracle 監聽日誌停止寫入的解決方法Oracle
- 新寫法-slide的總結IDE
- 常用CSS縮寫語法總結CSS
- 專案總監的方法論總結——點評
- 模板語法之--強制資料繫結和繫結事件監聽事件
- 【經典】連線oracle的總結(關於tnsname和監聽)Oracle
- 對於Unity回撥、監聽與廣播的使用總結Unity
- Odoo Domain條件表示式寫法總結OdooAI
- Oracle監聽服務無法啟動Oracle
- HPUX 監聽無法動態註冊UX
- Tomcat監聽443埠的方法Tomcat
- nginx配置location總結及rewrite規則寫法Nginx
- 監聽 watch props物件屬性監聽 或深度監聽物件
- 多種TNS報錯總結--監聽器及tnsnames.ora配置檔案多種出錯總結
- Windows密碼破解4方法總結Windows密碼
- swift4.0語法雜記(精簡版)Swift
- Android Selector的簡寫Android
- 監聽檔案修改的四種方法
- jmeter-結果分析,新增監聽器JMeter
- 動態監聽與靜態監聽
- 動態監聽和靜態監聽
- vue基本語法01賦值、表示式、指令、修飾符、簡寫、過濾、監聽Vue賦值
- 預設及非預設埠的動態監聽/靜態監聽實驗彙總
- 寫寫程式碼 聽聽歌
- 3天學寫mvvm框架[一]:資料監聽MVVM框架
- 編寫一個通用的事件監聽函式事件函式
- 編寫高質量iOS有效方法總結(一)iOS
- ssh遠端埠轉發無法監聽0.0.0.0
- 【監聽】兩庫互配靜態監聽
- ORACLE動態監聽與靜態監聽Oracle
- oracle靜態監聽和動態監聽Oracle
- 【oracle】動態監聽與靜態監聽Oracle