IBActions foo和foo:

时间:2010-08-21 04:17:45

标签: xcode interface-builder ibaction

在Interface Builder中我在库中 - >类当我选择我在XCode中创建的类,然后显示Actions时,我可以看到两个具有相同名称的类:

foo
foo:

这两个元素之间有什么区别?

2 个答案:

答案 0 :(得分:2)

foo是一种不接受任何参数的方法。 foo:将一个或多个参数传递给它的方法。

示例:

-(IBAction)foo;

将在IB中显示为foo

-(IBAction)foo:(id)sender;

将在IB中显示为foo:

我不知道为什么他们有相同的名字,你有这样的设置吗?

答案 1 :(得分:1)

IB假设您使用IB创建类文件,您将使用发件人,因此它会创建构造

-(IBAction)foo:(id)sender;

您通常需要有关发件人的信息,因此我会坚持使用该结构。如果您的实现中不需要 sender ,请忽略它。

-(IBAction)foo:(id)sender {
    [someObject doAMethod];
}