单击按钮时使用选择器调用不同类的方法

时间:2010-12-11 13:05:02

标签: iphone methods selector

我编写了一个方法并用一个按钮连接它,以便在单击按钮时调用它。现在我要做的是在点击某个其他视图上的按钮时调用相同的方法。

我该怎么做?我是否需要使用选择器或通知或简单的方法调用?

2 个答案:

答案 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];