2

@id/nameAndroid XML ファイルで使用されて@+id/nameいるメカニズムを独自のカスタム定義 XML ファイルで使用することはできますか?

Android プロジェクト内には、XSD スキーマ ファイルと、そのスキーマを使用するいくつかのカスタム XML があります。
一部の要素にはidフィールドがあり、Android 要素に ID を割り当てるのと同じ方法で割り当てたいと考えています。カスタム XML ファイル全体ですべての ID が一意であることを確認します。

編集
元の質問の説明が不十分でした。明確にさせてください:
この@idメカニズムはカスタム XML ファイル内で使用できます。

<myelem id="@+id/name"/>

@id/name問題は、XML ファイル(または)を検証しようとすると、id フィールドのタイプである@+id/nameとして認識されないことです。unsignedInt

cvc-attribute.3: The value '@+id/name' of attribute 'id' on element 'myelem' is not valid with respect to its type, 'unsignedInt'.
4

1 に答える 1

2

リソース XML ファイルで ID を定義し、それを XML で使用できます。

<item name="idname" type="id" />

次に、XML を解析すると、その値をresourcesの値と比較できます。

int id = getResources().getIdentifier(idname, "id", context.getPackageName());
于 2013-04-20T12:57:38.760 に答える