Android 从父视图获取特定类型的视图

Android 从父视图获取特定类型的视图,android,view,android-edittext,rootview,Android,View,Android Edittext,Rootview,你们知道有没有一种合适的方式可以像标题所说的那样从父视图中获取所有特定的视图类型 我想从我的活动中获取所有EditText视图,因此我想知道是否有比使用此解决方案然后测试每个视图以检查它是否为EditText更好的方法 谢谢你的帮助 Florian方法1: 假设您将edittext命名为edittext\u 0,edittext\u 1。。编辑文本。你可以做: ViewGroup vg = (ViewGroup) view; for (int i = 0; i < n; i++) {

你们知道有没有一种合适的方式可以像标题所说的那样从父视图中获取所有特定的视图类型

我想从我的活动中获取所有EditText视图,因此我想知道是否有比使用此解决方案然后测试每个视图以检查它是否为EditText更好的方法

谢谢你的帮助

Florian方法1:

假设您将edittext命名为edittext\u 0,edittext\u 1。。编辑文本。你可以做:

ViewGroup vg = (ViewGroup) view;
for (int i = 0; i < n; i++) {
    int id = vg.getResources().getIdentifier("edittext_"+i, "id", getPackageName());
     edittext[i] = (EditText) vg.findViewById(id);
}
选读

针对链接中给出的答案的优化答案:

Kotlin使用for in-loop更容易:

for (childView in ll.children) {
     if(childView.id == your_edittext_id) //If required
     //childView is a child of ll         
}
//Here ll is id of LinearLayout defined in layout XML.

谢谢你,老兄,顺便说一句,我是新来的,我不能投票;(很高兴这有帮助。无论如何,我认为任何人都可以给出有用的答案。
for (childView in ll.children) {
     if(childView.id == your_edittext_id) //If required
     //childView is a child of ll         
}
//Here ll is id of LinearLayout defined in layout XML.