1

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

我在界面构建器中创建了一个带有 NIB 文件的 ViewController,当将任何 UI 对象连接到 ViewController .h 以创建 IBOutlet 属性时,设置插座属性的对话框窗口不显示 Storage 字段。

为了清楚起见,界面生成器显示了这个对话框:

截图 1

而不是这个:

截图 2

因此,界面生成器生成的代码如下所示:

@property (unsafe_unretained, nonatomic) IBOutlet UILabel *labelName;

而我期待的代码是:

@property (weak, nonatomic) IBOutlet UILabel *labelName;

这种行为从几天开始发生并且仅针对一个项目,所以我怀疑我不小心更改了某些项目设置。

对恢复 XCode Interface Builder 行为以生成 ARC 代码有任何帮助吗?

提前致谢。

4

2 回答 2

0

我敢打赌你的目标是 4.x 对吗?在这种情况下,你不能使用弱,所以它使用 unsafe_unretained。它们是一样的,除了 unsafe_unretained 不会自动为您取消指针,但这对您的用例并不特别重要。

于 2012-05-22T07:25:36.327 回答
0

您可能关闭了ARC项目/目标设置。切换到Yes,你会回到Storage现场。

在此处输入图像描述

于 2012-05-22T08:56:33.790 回答