截取scrollview的滑动事件,传递给子控件

重写一个ScrollView

public class MyScrollView extends ScrollView{
        

        public MyScrollView(Context context, AttributeSet attrs, int defStyle) {
                super(context, attrs, defStyle);
        }

        public MyScrollView(Context context, AttributeSet attrs) {
                super(context, attrs);
        }

        public MyScrollView(Context context) {
                super(context);
        }
        
        
        @Override
        public boolean onInterceptTouchEvent(MotionEvent ev) {
                
        return false;
        }

}

由于事件先由ScrollView获得,所以要重写ScrollView,把事件传递给它的子控件,所以 重写onInterceptTouchEvent 方法,返回false。就可以把事件传给子控件了

原文地址:https://www.cnblogs.com/kobe8/p/3181969.html