ios - 更改 Swift 中现有按钮的操作

标签 ios swift ios8

我想将现有按钮的操作更改为 MainTableViewController 中的函数。如果我以编程方式创建按钮,这不是问题 - 但对于 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)

    }

最佳答案

您真的需要更改按钮调用的函数吗?

您可以只使用一个变量来保存按钮状态,并使用一个 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;

  }
}

关于ios - 更改 Swift 中现有按钮的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25953146/

相关文章:

iOS:EXC_BAD_ACCESS 错误 NSString 长度和 setHTTPBody

ios8 - xcode 控制台中的 "bad packing"通知

ios - 无需拉伸(stretch)即可替换导航栏后退按钮

iOS Storyboard - 从 ViewController 到另一个的自定义 socket ?

swift - 在 Swift 中,为什么同名的实例参数和类函数会产生无效的重声明错误?

ios - UITableView 刷新时无法滚动

objective-c - 使用 SonarQube 分析 iOS/Swift 移动应用程序

ios - 几个小时后推送通知的委托(delegate)方法未命中

ios 8 openUrl itms-services 不退出当前应用

ios - cocoapods pods 项目build设置