Android 在Activity裡查詢某個子View是否存在
阿新 • • 發佈:2018-11-12
判斷在Activity裡是否存在,我想到了遍歷一遍Activity的子View,然後對Tag,對上了就是有,沒對上就是沒有。要遞迴著找。
//是否存在這個子viewA,返回true就是有,false就是沒有
private Boolean getChildA(View view) {
Boolean a = false;
if (view instanceof ViewGroup) {
ViewGroup vp = (ViewGroup) view;
for (int i = 0; i < vp.getChildCount(); i++) {
View viewchild = vp.getChildAt(i);
//裡面的1000即為需要找View的tag
if(viewchild.getTag() != null && String.valueOf(viewchild.getTag()).equals("1000")) {
Log.i("已存在", String.valueOf(viewchild.getTag()));
return true;
}
a = a || getChildA(viewchild);
}
}
return a;
}
要這樣用,就醬
//swin即為activity
getChildA(swin.getWindow().getDecorView())