如何在XIB文件中禁止Xcode“Attribute Unavailable”警告?

时间:2012-09-02 11:08:43

标签: xcode macos warnings xib

我的应用程序的目标是10.6,并且所有.xib文件的“部署”值与之相比为10.6,最近更改为10.7(我不知道何时)。如果我将其更改回10.6,我会收到来自Xcode的以下警告:

/Users/andy/Source/.../Preferences.xib:383: Identifier on OS X versions prior to 10.7

以下是.xib文件的相关部分:

381: <string key="NSFrame">{{1, 1}, {116, 104}}</string>
382: <reference key="NSSuperview" ref="14642427"/>
383: <reference key="NSNextKeyView" ref="1001986100"/>
384: <string key="NSReuseIdentifierKey">_NS:11</string>

(事实上,当我在BBEdit中打开.xib以查看警告线然后关闭它并清理/构建Xcode时,被警告的线似乎发生了变化;但是内容总是移动383。警告发生的时间是第383行的NSSuperview线,至少可以说是奇怪的。

有时我会收到两个警告。另一个警告是:

file://localhost/Users/andy/Source/.../Preferences.xib: warning: Attribute Unavailable: Identifier on OS X versions prior to 10.7

当我点击它时,会突出显示.xib文件中的自定义视图。

有谁能告诉我这个警告意味着什么以及我如何摆脱它?

我使用Xcode 4.4.1在10.8下开发,我认为这个警告在10.6下运行时会引起问题(我在开发过程中无法做到这一点)。我很乐意根据需要提供其他信息。

1 个答案:

答案 0 :(得分:8)

删除它:

1)选择XIB文件(编辑器打开)

2)按cmd + opt + 3打开相关XIB的Identity Inspector。然后按警告导航器中的警告 - 该警告应在NIB编辑器中选择违规对象。

3)清除Identity中的值&gt;标识符(位于您指定自定义类的字段下方)

4)保存并构建。

应该这样做。

含义:

您正在使用10.6不支持的文档功能。

具体来说,此键/值似乎与@protocol NSUserInterfaceItemIdentification

相关联
  

NSUserInterfaceItemIdentification协议用于关联a   用户界面中包含对象的唯一标识符。协议是   AppKit接口对象采用支持窗口恢复,   有关窗口和其他与接口相关的对象的信息   保留并用于恢复应用程序的界面   下一个发射周期。

在XIB中搜索的关键是userInterfaceItemIdentifier