gpt4 book ai didi

swift3 - swift 3.0 UIBarButtonItem 操作不起作用

转载 作者:行者123 更新时间:2023-12-04 01:41:18 24 4
gpt4 key购买 nike

let leftbarbuttonitem = UIBarButtonItem(title:"Reset",style: .plain, target: self, action: #selector(tapResetButton(_:)))

func tapResetButton(_ sender:UIBarButtonItem){
count = 0
numberLabel.text = "0"

}

该操作无法响应单击事件。我加了断点然后发现它甚至没有进入函数。我不知道我的代码有什么问题。任何答案将不胜感激。提前致谢。

最佳答案

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")
}

声明 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")
}

完全在 viewDidLoad() 之外声明
lazy var logout: UIBarButtonItem = {
UIBarButtonItem.init(title: "Logout", style: .plain, target: self, action: #selector(ViewController.logOut))
}()

任何应该工作。

对于您的操作参数,您可以指定 ViewController明确命名,或者你可以直接说 self .
action: #selector(self.logOut)

关于swift3 - swift 3.0 UIBarButtonItem 操作不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40392617/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com