[英]Interface builder no longer generate ARC compliant code for IBOutlets
我正在使用XCode 4.3.2实现我的第一个iOS 5.1应用程序,并且正在尝试一种奇怪的XCode接口构建器行为。
我在界面生成器中使用NIB文件创建了一个ViewController,并且在将任何UI对象连接到ViewController .h以便创建IBOutlet属性时,用于设置插座属性的对话框窗口都不会显示“存储”字段。
为了清楚起见,界面构建器显示以下对话框:
而不是这个:
因此,接口构建器生成的代码如下所示:
@property (unsafe_unretained, nonatomic) IBOutlet UILabel *labelName;
而我期望的代码是:
@property (weak, nonatomic) IBOutlet UILabel *labelName;
这种行为从几天开始就只针对一个项目而发生,所以我怀疑我不小心更改了某些项目设置。
是否有任何还原XCode Interface Builder行为以生成ARC代码的帮助?
提前致谢。
我敢打赌,您的目标是4.x,对吗? 在那种情况下,您不能使用弱函数,因此它使用unsafe_unretained。 它们是同一件事,只是unsafe_unretained不会自动为您设置指针,但是这对您的用例而言并不重要。
您可能在项目/目标设置上关闭了ARC
。 切换到“ Yes
,您将返回“ Storage
字段。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.