我有大约20个不同的xml文件,并且它们都有一个raitingBar,我只有一个Activity,所以我的问题是,我可以对所有raitingBar使用相同的id xml文件?
答案 0 :(得分:3)
是的,你可以,在Android中,所有指定的XML ID最终在构建时将是R.id.*
类中的一些整数。
例如,假设您创建了此XML项:
<TextView android:id="@+id/text"
... />
声明android:id="@+id/text"
告诉Android,在+
课程中添加一个名为 text 的新ID(因为R.id
)ID。例如,它需要一些像123
这样的迭代。
此时,您在具有相同ID的另一个XML文件中定义另一个视图:
<TextView android:id="@id/text"
... />
现在,在您的Java代码中,您使用layout_1.xml
(第一个),然后拨打电话findViewById(R.id.text)
。请记住,所有R.id.*
都是整数类型(那些不是一些奇怪的对象!)
所以这个陈述被解释为findViewById(123)
。如果您还记得自己仅使用了layout_1.xml
个文件,则只有一个视图存在且标识为R.id.text
= 123
。因此,此调用将针对layout_1.xml
处的仅一个视图而不是其他XML文件中的所有视图。那就是它:))
注意:请避免在同一XML文件中使用相同的ID。