2

是否可以在我自己自定义的 XML 文件中使用 Android XML 文件中使用的@id/name和机制?@+id/name

在一个 Android 项目中,我有一个 XSD 架构文件和几个使用该架构的自定义 XML。
有些元素有一个id字段,我想以与为 android 元素分配 id 相同的方式分配该字段;确保在我的自定义 XML 文件中所有 id 都是唯一的。

编辑
原始问题的描述很差。让我澄清一下:
@id机制可在自定义 XML 文件中使用,我可以编写

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

问题是当我尝试验证 XML 文件@id/name(或@+id/name)未被识别为unsignedIntid 字段的类型时。

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 时,您可以将值与资源中的值进行比较。

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