0

我需要views从返回的指定 id获取所有activity。我是否必须步行View树或是否有任何内置函数返回所有出现的views具有指定 id 的?

4

1 回答 1

0

如果要检索 a View,则需要使用android:id属性为其分配唯一 ID。如果您不这样做,那么您将不得不使用更繁琐的替代方法,例如解析视图树。

来自Layouts |的描述 Android 开发者提到:

ID

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

android:id="@+id/my_button"

与您相关的还应该是来自同一页面的这句话:

ID 不必在整个树中是唯一的,但它应该在您正在搜索的树的一部分中是唯一的(这通常可能是整棵树,因此最好尽可能完全唯一)。

所以要找到你的视图,你应该findViewByID()少用你必须查看视图树。有关如何做到这一点的示例,我建议您咨询Grokking Android 的 Find all View-IDs of an Android UI

于 2013-09-19T08:51:19.033 回答