4

My App is targeted to 10.6 and the "Deployment" value for all .xib files was 10.6 apart from one, which recently changed to 10.7 (I don't know when). If I change it back to 10.6 I get the following warning from Xcode:

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

Here is the relevant part of the .xib file:

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>

(In fact when I open the .xib in BBEdit in order to see the warning line and then close it and clean/build in Xcode, the line being warned seems to change; it's always 383 however the content moves. The last time the warning happened it was the NSSuperview line that was on line 383, which is weird to say the least).

Sometimes I get two warnings. The other warning is:

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

Which highlights a custom view in the .xib file when I click on it.

Can anyone tell me what this warning means and how I get rid of it?

I am developing under 10.8 using Xcode 4.4.1 and I reckon this warning will cause issues when running under 10.6 (something I cannot do during development). I am happy to provide additional info, as required.

4

1 に答える 1

9

削除するには:

1)XIBファイルを選択します(エディターが開きます)

2)cmd+ opt+を押し3て、問題のXIBのIDインスペクターを開きます。次に、警告ナビゲーターで警告を押します。これにより、NIBエディターで問題のあるオブジェクトが選択されます。

3)[ID]> [識別子](カスタムクラスを指定するフィールドのすぐ下)の値をクリアします

4)保存してビルドします。

それはそれをする必要があります。

その意味:

10.6でサポートされていないドキュメント機能を使用しています。

具体的には、このキー/値は以下に関連付けられているよう@protocol NSUserInterfaceItemIdentificationです。

NSUserInterfaceItemIdentificationプロトコルは、一意の識別子をユーザーインターフェイスのオブジェクトに関連付けるために使用されます。このプロトコルは、ウィンドウの復元をサポートするためにAppKitインターフェイスオブジェクトによって採用されます。これにより、ウィンドウおよびその他のインターフェイス関連オブジェクトに関する情報が保持され、次の起動サイクル中にアプリケーションのインターフェイスを復元するために使用されます。

XIBで検索するキーはですuserInterfaceItemIdentifier

于 2012-09-04T11:17:01.053 に答える