lit*_*333 11 uibarbuttonitem swift3
let leftbarbuttonitem = UIBarButtonItem(title:"Reset",style: .plain, target: self, action: #selector(tapResetButton(_:)))
func tapResetButton(_ sender:UIBarButtonItem){
count = 0
numberLabel.text = "0"
}
Run Code Online (Sandbox Code Playgroud)
该操作无法响应click事件.我添加了断点然后发现它甚至没有进入函数.我不知道我的代码有什么问题.任何答案将不胜感激.提前致谢.
Ash*_*k R 17
Swift 3.0
在ViewDidLoad()中声明UIBarButton
override func viewDidLoad() {
super.viewDidLoad()
let logout: UIBarButtonItem = UIBarButtonItem.init(title: "Logout", style: .plain, target: self, action: #selector(ViewController.logOut))
}
func logOut() {
print("LogOut")
}
Run Code Online (Sandbox Code Playgroud)
声明UIBarButtonItem OutSide ViewDidLoad()
var logout:UIBarButtonItem = UIBarButtonItem()
override func viewDidLoad() {
super.viewDidLoad()
logout = UIBarButtonItem.init(title: "Logout", style: .plain, target: self, action: #selector(ViewController.logOut))
}
func logOut() {
print("LogOut")
}
Run Code Online (Sandbox Code Playgroud)
完全声明viewDidLoad()
lazy var logout: UIBarButtonItem = {
UIBarButtonItem.init(title: "Logout", style: .plain, target: self, action: #selector(ViewController.logOut))
}()
Run Code Online (Sandbox Code Playgroud)
任何应该工作.
对于您的操作参数,您可以明确指定ViewController名称,也可以说self.
action: #selector(self.logOut)
Run Code Online (Sandbox Code Playgroud)
当我把UIBarButtonItem的初始化放到函数viewDidLoad之外时,action就无法响应了。但是当我把它放到函数中时。有用。我不知道为什么。但问题解决了。如果你知道原因。请告诉我。谢谢你。
| 归档时间: |
|
| 查看次数: |
8592 次 |
| 最近记录: |