Android 我可以在不同的XML上使用相同的id吗?

Android 我可以在不同的XML上使用相同的id吗?,android,Android,我有大约20个不同的xml文件,它们上面都有一个raitingBar,我只有一个活动,所以我的问题是,我可以为xml文件上的所有raitingBar使用相同的id吗?是的,在Android中,所有指定的xml id最终在构建时都将是R.id.类中的一些整数 例如,假设您创建此XML项: <TextView android:id="@+id/text" ... /> 例如,现在在Java代码中使用layout_1.xml(第一个),然后调用findViewById(R.id.

我有大约20个不同的xml文件,它们上面都有一个raitingBar,我只有一个活动,所以我的问题是,我可以为xml文件上的所有raitingBar使用相同的id吗?

是的,在Android中,所有指定的xml id最终在构建时都将是
R.id.
类中的一些整数

例如,假设您创建此XML项:

<TextView android:id="@+id/text"
    ... />
例如,现在在Java代码中使用
layout_1.xml
(第一个),然后调用
findViewById(R.id.text)
。请记住,所有
R.id.*
都是整数类型(它们不是一些奇怪的对象!)

因此,该语句被解释为
findviewbyd(123)
。如果您记得您只使用了
layout_1.xml
文件,并且在该文件中只有一个视图存在,其ID为
R.ID.text
=
123
。因此,此调用将只针对
layout_1.xml中的一个视图,而不是另一个xml文件中的所有视图。就这样:)


注意:尽量避免在同一个XML文件中使用相同的ID。

可以;xmlid后来变成R.id.${name}此时我们不能说这个常量属于哪个布局。只有当我们通过view.findviewbyd()访问它时才有意义,但在java中,它会引用所有这些吗?我指的是当前XML上的一个,因为findViewById方法仅为当前视图调用,是的,您可以。谢谢各位,祝你们有一个愉快的星期
<TextView android:id="@id/text"
    ... />