我编写了一个方法并用一个按钮连接它,以便在单击按钮时调用它。现在我要做的是在点击某个其他视图上的按钮时调用相同的方法。
我该怎么做?我是否需要使用选择器或通知或简单的方法调用?
答案 0 :(得分:11)
在选择器中将Target作为类的对象传递给该方法。
[anotherButton addTarget:objectOfAnotherClass action:@selector(yourMethodInAnotherClass) forControlEvents:UIControlEventTouchUpInside];
或
只需为按钮方法所在的类创建一个对象,并以普通方式调用该方法
In First Class say firstView
-(IBAction) yourButtonMethod : (id)sender
{
//Some Code
}
In another class
-(IBAction) yourAnotherButtonMethod : (id)sender
{
firstView *firstViewObject = [firstView alloc] init];
[firstViewObject yourButtonMethod:sender];
}
通过为按钮设置tagValues来区分发件人
答案 1 :(得分:0)
你可以像使用objectOfTargetClass替换self的打击代码一样使用 并且在方法的选择器中需要命中该类
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow)name:UIKeyboardWillShowNotification
object:nil];