【发布时间】:2014-11-16 12:41:43
【问题描述】:
这是一个相当大的问题:奥特莱斯没有出现在 IB 中。
复制:
1) 我将一个变量声明为 IBOutlet,例如在我的视图控制器的 .h 文件中
@property (nonatomic, strong) IBOutlet UILabel* testlabel;
2) 我打开故事板,点击视图控制器。 - 如果这是一个新项目,则没有“Outlets”列表。 - 如果这是一个已经定义了 outlet 的旧项目,“Outlets”列表包含以前的 outlet,但不是我添加的那个。
有没有人遇到过同样的问题。这非常重要,因为除非我停止使用 Outlets,否则我基本上无法继续。我在发行说明中找不到任何有关它的信息。
编辑我正在 youtube 上添加一个视频来显示问题,以防我没有正确解释它。如果我忘记了一些明显的事情,我很高兴被嘲笑 :) 就是说,我一直在遵循这些相同的行为,而奥特莱斯一直在列表中。
编辑 2 为清楚起见,我删除了 ivar 声明,因为它似乎得到了大部分关注。
编辑 3 好的,我似乎遇到了以前在 this question 和 this other question 上看到的问题。基本上,如果我打开自定义类下拉菜单,我只会看到一些“标准”类,例如 UIViewController。如果我选择其中任何一个,我就会得到奥特莱斯。例如,对于 UIViewController,我总是拥有那个 view->View。但是,我的项目的类不在下拉列表中。手动输入名称似乎可行,但实际上并非如此。一定有一些索引问题(除了我已经从
中删除了所有内容~/Library/Developer/Xcode/DerivedData/
没有成功。如果您想尝试,我已将我的代码放在GitHub 上。这并没有为我显示奥特莱斯,但它为许多其他人显示 - 所以严格来说这不是代码的“错误”。这更像是一个 XCode 问题。欢迎任何帮助!
编辑 4 我认为问题出在此处:看右边。下拉菜单不显示“ViewController.h”类。如果我手动输入它,它似乎可以识别它,但实际上我怀疑它没有。以前,我总是在下拉菜单中看到我的项目类的完整列表。
【问题讨论】:
-
那是伊瓦尔。这是之前属性的方式,如果您不想合成 ivar,它仍然有效。
-
代码的 ivar 部分实际上并不重要。问题是该属性是一个未显示在列表中的 IBOutlet 蚂蚁。我添加了一个视频以使问题更清楚。
-
你能用 Xcode 6.1.1 的 beta 种子试试吗?
-
@MattGibson 我正在下载它 :) 我希望能解决问题。但即使是这样,关于如何“刷新”列表的好奇心仍然存在......
-
@MattGibson 6.1.1 也有同样的问题。我开始有点绝望了……
标签: ios objective-c xcode xcode6 xcode6.1