确定方法调用是来自IBAction按钮还是自我调用

时间:2014-01-27 22:17:33

标签: objective-c

我有一个方法-(IBAction)slotSpin:(id)sender {do stuff }。它是通过按下按钮执行的,也是使用自我调用从ViewController内执行的。我如何从这个方法中告诉它是如何被调用的?

1 个答案:

答案 0 :(得分:6)

从视图控制器调用nil时将sender传递为[self slotSpin:nil];

-(IBAction)slotSpin:(id)sender {
    if (sender) {
        // called from button action (sender = UIButton *)
    } else {
        // called from view controller
    }
}

然后测试:

{{1}}