在我的 View Controller 中,我有 10 个按钮。每个按钮都有一个标签,并且所有按钮都调用相同的操作(通过开关 (sender.tag) 分隔,case 0 -> case 9 以区分选择了哪个按钮)。
我用 IB 制作,将所有按钮 (@IBOutlet
) 连接到同一个 @IBAction
,一切都很好。但现在我想以编程方式完成此操作,无需 IB。
因此,我删除了 @IBOutlet
和 @IBAction
以创建新按钮 (let myButton1 = UIBUtton()
) 和一个新操作(func newAction(sender: UIButton)
)。我尝试使用 addTarget:
为所有新按钮使用相同的选择器,但应用程序崩溃了。
有人有解决办法吗?
最佳答案
这应该有效:
func newAction(sender: UIButton) {
...
}
...
myButton1.addTarget(self, action: "newAction:", forControlEvents: .TouchUpInside)
myButton2.addTarget(self, action: "newAction:", forControlEvents: .TouchUpInside)
myButton3.addTarget(self, action: "newAction:", forControlEvents: .TouchUpInside)
关于swift - 多个按钮可实现一个操作,无需 IB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32299608/