Android开发之解决父控件拦截子控件事件问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发之解决父控件拦截子控件事件问题相关的知识,希望对你有一定的参考价值。

以ViewPager为例:

 1 public class TopNewsViewPager extends ViewPager {
 2     public TopNewsViewPager(Context context) {
 3         super(context);
 4     }
 5 
 6     public TopNewsViewPager(Context context, AttributeSet attrs) {
 7         super(context, attrs);
 8     }
 9 
10     //重写这个方法,并且在方法里面请求所有的父控件都不要拦截他的事件
11     @Override
12     public boolean dispatchTouchEvent(MotionEvent ev) {
13         getParent().requestDisallowInterceptTouchEvent(true);
14         return super.dispatchTouchEvent(ev);
15     }
16 }

 

以上是关于Android开发之解决父控件拦截子控件事件问题的主要内容,如果未能解决你的问题,请参考以下文章

android 对于父布局拦截事件,子view啥时候设置requestdisallowintercepttouchev

Android知识点:设置父控件事件拦截

将子控件的点击事件传递给父控件

将子控件的点击事件传递给父控件

父控件的点击事件被Recyclerview拦截

ios开发事件处理之:三 :寻找最合适的view