【发布时间】:2019-07-24 13:16:13
【问题描述】:
我知道这个问题在这个网站上经常被问到,但是我看过的每个问题都有不同的答案,我每个人都试过了。
我有一个 UIButton 放在我的情节提要中,并将它连接到视图控制器中的 @IBAction。每次点击按钮,都会报错-[UIViewController openAlert]: unrecognized selector sent to instance
该函数没有参数(我尝试使用 sender 参数,它调用 openAlertWithSender 而不是 openAlert(sender:)),我认为将按钮连接到类顶部的变量会起作用,但它给了我一个新的错误:This class is not key value coding-compliant
我确保按钮正确连接到情节提要中的功能,并确保在视图中启用了用户交互。
我已尝试以编程方式构建按钮,但它根本不会出现在屏幕上。
无论我做什么,我似乎都无法让这个按钮工作。
我的代码:
class OfflineViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
// Hide the navigation bar
navigationController?.setNavigationBarHidden(true, animated: animated)
NetworkHandler.shared.addListener(listener: self)
}
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
// Show the navigation bar
navigationController?.setNavigationBarHidden(false, animated: animated)
}
override func viewDidDisappear(_ animated: Bool) {
super.viewDidDisappear(animated)
NetworkHandler.shared.removeListener(listener: self)
}
private func showMainController() -> Void {
DispatchQueue.main.async {
self.performSegue(withIdentifier: "NetworkAvailable", sender: self)
}
}
@IBAction func openAlert() {
let alert = UIAlertController(title: "Clicked", message: "You have clicked on the button", preferredStyle: .alert)
self.present(alert, animated: true, completion: nil)
}
}
感谢任何帮助。
【问题讨论】:
标签: ios swift uibutton ibaction