这两行代码有区别吗?
__weak IBOutlet UITextField *usernameField;
@property (weak) IBOutlet UITextField *usernameField;
如果您在 .h 或 .m 文件的接口(interface)部分中声明其中任何一个会怎样?
最佳答案
是的。第一个示例声明了一个名为 usernameField
的弱实例变量,但第二个示例声明了一个名为 usernameField
的弱属性,以及一个名为 _usernameField
的实例变量,即由属性访问。
如果您在 .m 文件的 @interface 部分中声明它,则只能在该 .m 文件中访问它(除非您弄乱了 Objective-C 运行时)。
关于iOS:__weak 与(弱),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23944361/