我想在MainTableViewController中将现有按钮的动作更改为func。如果我以编程方式创建按钮,这不是问题 - 但是使用Storyboard-Editor中的现有按钮,将不会调用该方法。
这里有什么问题吗?
class SignatureTableViewCell: UITableViewCell {
@IBOutlet weak var signatureButton: UIButton!
var formVC:FormTableViewController!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
override init() {
super.init()
self.signatureButton.addTarget(formVC, action: "signatureButtonPressed:", forControlEvents: .TouchUpInside)
}
答案 0 :(得分:3)
您真的需要更改按钮调用的功能吗?
你可以让一个变量按住按钮状态并有一个switch语句来选择按钮的正确行为。
var buttonState : Int = ButtonStates.FIRST_STATE
func buttonCLick(button :UIButton)
{
switch (buttonState)
{
case ButtonStates.FIRST_STATE:
doMyFirstAction()
break;
case ButtonStates.SECOND_STATE:
doMySecondAction()
break;
default;
break;
}
}
答案 1 :(得分:0)
尝试以下步骤。我偶然发现了它。
•保持 Storyboard 和 ViewController 处于打开状态。
•单击要重新映射到另一个功能的按钮。
•打开右侧的 Utilities 窗格,然后选择Connections Inspector(左侧的第六个图标)。
•在“已发送操作”下,您的按钮将被映射到一个功能。
•将鼠标移到其上方,然后单击左上方出现的小叉形以删除该功能。
•单击并按住动作附近的小圆圈。
•将其拖动到要将按钮映射到的功能。
您完成了。