我在 Xcode 8
中使用 Swift 2.3
创建了一个按钮方法。让我们说
@IBAction func testAction(sender: UIButton) {
print("\(sender.tag)");
}
但是在 Storyboard编辑器的连接检查器
中,它显示为testActionWithSender:
,我知道这不是正确的方法名称,但我对此没有任何问题,直到它崩溃
[TestProject.ViewController testActionWithSender:]: unrecognized selector sent to instance 0x7ff3f3e050e0
点击按钮。
那么为什么连接检查器
中的方法名称会发生变化以及如何修复它?
最佳答案
通过使用此解决方法,您可以添加现有操作,也可以将多个按钮连接到单个操作。
我认为 Xcode8 中有一个错误。您可以通过将 sender
更改为 _ sender
例如:- 普通按钮
@IBAction func huu(sender: UIButton) {
}
您无法向此操作添加多个按钮或单个按钮,您需要像这样简单地进行更改,然后您可以通过从 Storyboard拖动和连接来添加多个按钮。
@IBAction func huu(_ sender: UIButton) {
}
连接 IBOutlets 后,Xcode 将显示如下警告:-
要删除此警告,只需从操作/函数中删除 _
符号即可。确保在连接 IBOutlet 后删除 _
希望这对您有帮助! :)
关于ios - Storyboard连接检查器中的方法名称发生更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39610504/