gpt4 book ai didi

objective-c - IBOutlet 作为属性或作为变量有什么区别?

转载 作者:搜寻专家 更新时间:2023-10-30 20:11:39 25 4
gpt4 key购买 nike

有两种不同的方法来声明 IBOutlet。

  1. 在@interface 部分作为变量:

    IBOutlet UIButton *exampleButton;
  2. 在曲线括号下方但在 .h 文件的@end 之前作为属性:

    @property (nonatomic, retain) IBOutlet UIButton *exampleButton;

这两种方法有什么区别,我应该在哪里使用它们?哪种方法更好,在什么情况下更好?

最佳答案

根据我的经验,任何一个都可以正常工作。不起作用的是同时声明实例变量和属性“IBOutlet”——这似乎真的很困惑。如果出于某种原因你想避免提供对你的导出的公共(public)访问,你可以将它声明为一个实例变量,而不是创建属性。另一方面,现在运行时会为你合成实例变量,很多人只声明属性而跳过显式实例变量声明;在这种情况下,您显然会将属性声明为 IBOutlet。

关于objective-c - IBOutlet 作为属性或作为变量有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6681117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com