2010-02-10 27 views
4

UIControlEventTouchDown之類的任何事件之後,如何使UIButton在類MyClass上執行我的班級方法+doSomething:(id)sender?我可以像我一樣使用-addTarget:action:forControlEvents:作爲實例方法嗎?如何使UIButton在點擊時執行我的類方法?

在此先感謝。

回答

11

由於班也ObjC對象,你可以使用-addTarget:...像往常一樣:

[button addTarget:[MyClass class] 
      action:@selector(classMethod:) 
forControlEvents:UIControlEventTouchUpInside]; 
+0

它在模擬器上與「EXC_BAD_ACCESS(code = EXC_I386_GPFLT)」崩潰。 – Imran 2015-04-16 13:04:49

0

添加一個將調用Class方法的中間方法。

[button addTarget:self action:@selector(callClassMethod:) forControlEvents: UIControlEventTouchDown]; 

- (void)callClassMethod:(id)sender { 
    [MyClass classMethod:sender]; 
} 
+1

這會工作,但我想避免類之間的相互依賴關係這種做法造成的。任何其他想法? – cduck 2010-02-10 07:37:13

相關問題