一个动作或多个方法从多个动作调用

时间:2011-12-15 09:44:02

标签: iphone objective-c ios

使用一个将被许多按钮调用的方法,更好的是,在每个按钮的操作中调用此方法或创建一个所有按钮调用的操作以执行此方法?

感谢。

2 个答案:

答案 0 :(得分:1)

如果您的方法是一般用途,例如我有一个方法,我正在调用“呼叫”功能来拨打电话。我会在appDalegate中编写该方法。因为此方法通过各种按钮单击执行相同的操作。像:

在delegate.m

- (void) makeCall:(NSString *)number
{
   NSURL *phoneNumberURL = [NSURL URLWithString:[NSString stringWithFormat:@"tel:%@",number]];
   NSLog(@"%@ from delegate",phoneNumberURL);
  [[UIApplication sharedApplication] openURL:phoneNumberURL];
}

如果您的方法需要区分按钮的点击,例如tag,那么我想编写单独的方法而不是if....else if...switch

希望它能给你一个想法......

答案 1 :(得分:1)

第二种方法要好得多,因为它可以让您保持代码组织,并且您可以始终使用[sender tag]或在switch或{中比较发件人本身来确定哪个按钮调用了该方法{1}}分别循环。