在不按按钮的情况下调用@IBAction函数

时间:2018-07-04 12:52:06

标签: swift function button ibaction

如何使用原始的Common.ReceivedNotificationsbutton1()调用calc()函数(就像我点击此按钮一样)?用sender呼叫func是不好的解决方案,因为原始发件人丢失了,我无法通过nil来更改按钮图像。

其他主题的所有答案均使用sender?.image = UIImage(named: "")。但是此解决方案不起作用。

button.sendActions(for: .touchUpInside)

3 个答案:

答案 0 :(得分:4)

设置按钮的出口,并将参考作为发件人传递

to_array

答案 1 :(得分:0)

var var1 = true
var var2 = 1


@IBAction func button1(_ sender: UIBarButtonItem?) {
    button1Action()
}

func button1Action() {
    if var2 == 1 {
        sender?.image = UIImage(named: "1")

    } else {
        sender?.image = UIImage(named: "2")
    }
}


func calc() {
    if var1 {
        button1Action()
    }
}

答案 2 :(得分:-1)

您可以致电self.perform(Selector, with: self)