在Interface Builder中我在库中 - >类当我选择我在XCode中创建的类,然后显示Actions时,我可以看到两个具有相同名称的类:
foo
foo:
这两个元素之间有什么区别?
答案 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];
}