您的位置:首页 > 移动开发 > Android开发

Android获取activity的所有子view(使用到递归)

2017-03-04 15:59 1521 查看
//-----------------获取 activity中的所有view
private void getAllViews(Activity act) {
List<View> list = getAllChildViews(act.getWindow().getDecorView());
}

private List<View> getAllChildViews(View view) {
List<View> allchildren = new ArrayList<View>();
if (view instanceof ViewGroup) {
ViewGroup vp = (ViewGroup) view;
for (int i = 0; i < vp.getChildCount(); i++) {
View viewchild = vp.getChildAt(i);
allchildren.add(viewchild);
//再次 调用本身(递归)
allchildren.addAll(getAllChildViews(viewchild));
}
}
return allchildren;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐