IBActions foo 和 foo:

发布于 2024-09-15 04:57:42 字数 154 浏览 1 评论 0原文

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

foo
foo:

这两个foos之间有什么区别?

In Interface Builder I in Library->Classes when I select a class that I made in XCode, then display the Actions, I can see two with the same name:

foo
foo:

What is the difference between these two foos?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

纵性 2024-09-22 04:57:42

foo 是一个不接受任何参数的方法。 foo: 将一个或多个参数传递到其方法中。

示例:

-(IBAction)foo;

在IB中将显示为foo

-(IBAction)foo:(id)sender;

在 IB 中将显示为 foo:

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

foo is a method that doesn't accept any arguments. foo: passes an argument or arguments into its method.

Example:

-(IBAction)foo;

will be shown as foo in IB.

-(IBAction)foo:(id)sender;

will be shown as foo: in IB.

I don't know why they have the same name, do you have them set that way?

半寸时光 2024-09-22 04:57:42

IB 假定如果您使用 IB 创建类文件,您将使用发送者,因此它创建了构造。

-(IBAction)foo:(id)sender;

您通常需要有关发送者的信息,所以我会坚持这样做构造。如果您的实现中不需要发送者,只需忽略它即可。

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

IB assumes if your creating the class files using IB that you will using the sender and so it creates the construct

-(IBAction)foo:(id)sender;

You usually will need info about the sender so I would stick with that construct. If you don't need the sender in your implementation, simply ignore it.

-(IBAction)foo:(id)sender {
    [someObject doAMethod];
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文