0

嗨,谁能告诉我是否有任何方法可以在相同的布局上使用相同的 id?为了。例如

<TextView
    android:id="@+id/test">
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="test"/>



<ListView
    android:id="@+id/listTest">
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    "/>



<TextView
    android:id="@+id/test">
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="test"/>
4

4 回答 4

0

你不能那样做。如果您这样做,那么您想要在活动中动态执行的操作将不适用于任何文本视图。

于 2013-10-23T05:07:23.633 回答
0

Id 的目的是唯一标识布局中的视图。因此,即使您可以在技术上做到这一点,也不建议考虑良好的编程实践。

根据 android 文档:

视图可能有一个与之关联的整数 id。这些 id 通常在布局 XML 文件中分配,用于在视图树中查找特定视图。

一个常见的模式是:

  1. 在布局文件中定义一个视图并为其分配一个唯一的 ID。
  2. 从 Activity 的 onCreate 方法中,找到使用该 ID 的视图。

笔记:

视图 ID 在整个树中不必是唯一的,但最好确保它们至少在您正在搜索的树的部分中是唯一的。

参考

在安卓中查看

Android中的布局

于 2013-10-23T05:03:03.217 回答
0

,它不可能。如前所述 android 文档

任何 View 对象都可能有一个与之关联的整数 ID,以唯一标识树中的 View。编译应用程序时,此 ID 以整数形式引用,但 ID 通常在布局 XML 文件中作为字符串在 id 属性中分配。这是所有 View 对象(由 View 类定义)共有的 XML 属性,您将经常使用它。

有关详细信息,请参阅本文档

于 2013-10-23T04:49:13.197 回答
0

不,你不能做..

ID 意味着始终是唯一的..

于 2013-10-23T04:51:28.443 回答