Android获取所有指定类型的子控件,这样就不需要逐个使用findViewByID来获取控件,来达到控制状态的目的了。
/**
* 获取所有指定类型的子控件
* @param T
* @return
*/
private List getAllChildViews(Class> T) {
View view = this.getWindow().getDecorView();
return getAllChildViews(view, T);
}
private List getAllChildViews(View parent, Class> T) {
List allchildren = new ArrayList();
if (parent instanceof ViewGroup) {
ViewGroup vp = (ViewGroup) parent;
for (int i = 0; i < vp.getChildCount(); i++) {
View viewchild = vp.getChildAt(i);
if (viewchild.getClass().equals(T)) {
allchildren.add(viewchild);
}
allchildren.addAll(getAllChildViews(viewchild, T));
}
}
return allchildren;
}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。