记录递归找到指定类型的ViewParent
2023-02-14 本文已影响0人
雨来
使用:
findTargetParent(ivSmallWindow,SuperPlayerView.class,false);
/**
* 递归找出指定类型的 ViewParent 目标ViewGroup
* @param view 子View
* @param cls 指定的类型
* @param disallowInterceptTouchEvent 是否允许拦截 相关 主要与 onInterceptTouchEvent有关
*/
public void findTargetParent(View view, Class cls,boolean disallowInterceptTouchEvent){
ViewParent parent = view.getParent();
if (!cls.isInstance(parent)){
findTargetParent((View) parent,cls,disallowInterceptTouchEvent);
}else {
parent.requestDisallowInterceptTouchEvent(disallowInterceptTouchEvent);
}
}