我需要从views
返回指定ID的所有activity
。我是否必须遍历View
树,或者是否有任何内置函数可以返回所有具有指定ID的views
?
答案 0 :(得分:0)
如果要检索View
,则需要使用android:id
属性为其分配唯一ID。如果不这样做,那么你将需要一个更繁琐的替代方法,例如解析视图树。
来自Layouts | Android Developers的说明:
<强> ID 强>
任何View对象都可以具有与之关联的整数ID,以便唯一 识别树中的视图。编译应用程序时 此ID以整数形式引用,但通常会分配ID 在布局XML文件中作为字符串,在id属性中。这是个 所有View对象共有的XML属性(由View类定义) 你会经常使用它。 XML中的ID语法 标签是:
android:id="@+id/my_button"
与您的相关性也应该是同一页面的引用:
ID在整个树中不一定是唯一的,但它在您正在搜索的树的部分内应该是唯一的(通常可能是整个树,因此最好在可能的情况下完全唯一)。
因此,要查找您的视图,您应该使用findViewByID()
,而不必查看视图树。有关如何执行此操作的示例,我建议您使用Grokking Android's Finding all View-IDs of an Android UI