我想要UIButton TouchUpInside控件事件的相同操作。例如:
[button addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
我想在整个应用程序中概括buttonAction
。这样做的最佳方法是什么?这是否可以使用类别?或继承?
提前致谢。
答案 0 :(得分:0)
您可以在类中添加此方法,并将类名放入目标。
YourClass *class = [YouClass alloc]init];
[button addTarget:class action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
或者你可以使用像这样的访问者来获取课程
[button addTarget:[A getClassA] action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
@implementation A
+(YouClass *) getClassA{
//get instance if already initialized or init it
//and return the instance
}
@end
答案 1 :(得分:0)
解决方案取决于您想要实现的目标。如果您希望通用操作在整个使用按钮的应用程序中修改事件,那么使用类别就可以了。 如果要向基类添加新行为(如向按钮添加自定义布局),则子类化很有用。
我希望这有助于你的方法!