繁体   English   中英

接口构建器不再为IBOutlets生成ARC兼容代码

[英]Interface builder no longer generate ARC compliant code for IBOutlets

我正在使用XCode 4.3.2实现我的第一个iOS 5.1应用程序,并且正在尝试一种奇怪的XCode接口构建器行为。

我在界面生成器中使用NIB文件创建了一个ViewController,并且在将任何UI对象连接到ViewController .h以便创建IBOutlet属性时,用于设置插座属性的对话框窗口都不会显示“存储”字段。

为了清楚起见,界面构建器显示以下对话框:

屏幕截图1

而不是这个:

屏幕截图2

因此,接口构建器生成的代码如下所示:

@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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM