故事板连接检查器中的方法名称已更改
Method name gets changed in storyboard connections inspector
我使用 Xcode 8
中的 Swift 2.3
创建了一个按钮方法。比方说
@IBAction func testAction(sender: UIButton) {
print("\(sender.tag)");
}
但是在故事板编辑器的 Connections inspector
中它显示为 testActionWithSender:
,我知道这不是正确的方法名称,但我对此没有任何问题,直到它因
[ 崩溃=17=]
[TestProject.ViewController testActionWithSender:]: unrecognized selector sent to instance 0x7ff3f3e050e0
点击按钮。
那么为什么 Connections inspector
中的方法名称会发生变化,我该如何解决?
我遇到了同样的问题。我找到的唯一解决方法是删除连接,然后将按钮操作拖到新的 Action 方法中。
如果您 link 将您的按钮更改为现有按钮,它会崩溃
通过使用此解决方法,您可以添加现有操作,也可以将多个按钮连接到一个操作。
我认为 Xcode8 中存在错误。您可以通过将 sender
更改为 _ sender
来将 multiple/Single 按钮添加到单个操作/功能
例如:- 普通按钮
@IBAction func huu(sender: UIButton) {
}
您不能向此操作添加多个按钮或单个按钮,您需要像这样简单地更改,然后您可以通过使用从情节提要中拖动和连接来添加多个按钮。
@IBAction func huu(_ sender: UIButton) {
}
连接 IBOutlets 后 Xcode 将显示如下警告:-
要删除此警告,只需从 action/function 中删除 _
符号。确保在连接您的 IBOutlets
后删除 _
希望对您有所帮助! :)
我使用 Xcode 8
中的 Swift 2.3
创建了一个按钮方法。比方说
@IBAction func testAction(sender: UIButton) {
print("\(sender.tag)");
}
但是在故事板编辑器的 Connections inspector
中它显示为 testActionWithSender:
,我知道这不是正确的方法名称,但我对此没有任何问题,直到它因
[ 崩溃=17=]
[TestProject.ViewController testActionWithSender:]: unrecognized selector sent to instance 0x7ff3f3e050e0
点击按钮。
那么为什么 Connections inspector
中的方法名称会发生变化,我该如何解决?
我遇到了同样的问题。我找到的唯一解决方法是删除连接,然后将按钮操作拖到新的 Action 方法中。
如果您 link 将您的按钮更改为现有按钮,它会崩溃
通过使用此解决方法,您可以添加现有操作,也可以将多个按钮连接到一个操作。
我认为 Xcode8 中存在错误。您可以通过将 sender
更改为 _ sender
例如:- 普通按钮
@IBAction func huu(sender: UIButton) {
}
您不能向此操作添加多个按钮或单个按钮,您需要像这样简单地更改,然后您可以通过使用从情节提要中拖动和连接来添加多个按钮。
@IBAction func huu(_ sender: UIButton) {
}
连接 IBOutlets 后 Xcode 将显示如下警告:-
要删除此警告,只需从 action/function 中删除 _
符号。确保在连接您的 IBOutlets
_
希望对您有所帮助! :)