Android 点击事件冲突之拦截父控件事件 交给子控件处理

babyDetail.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        if(event.getAction()==MotionEvent.ACTION_DOWN){
            //通知父控件不要干扰,即屏蔽父控件的该事件以及该事件之后的一切action
            v.getParent().requestDisallowInterceptTouchEvent(true);
        }
        if(event.getAction()==MotionEvent.ACTION_MOVE){
            //通知父控件不要干扰,即屏蔽父控件的该事件以及该事件之后的一切action
            v.getParent().requestDisallowInterceptTouchEvent(true);
        }
        if(event.getAction()== MotionEvent.ACTION_UP){
            v.getParent().requestDisallowInterceptTouchEvent(false);
        }
        return false;
    }
});

版权声明:本文为qq_25138543原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。