What causes a MotionEvent.ACTION_CANCEL in Android?

All you need is to call

requestDisallowInterceptTouchEvent(true);

on the parent view, like this -

        @Override
        public boolean onTouch(View view, MotionEvent motionEvent) {
            view.getParent().requestDisallowInterceptTouchEvent(true);
            switch(motionEvent.getActio){
            }

            return false; 

         }

Source: onInterceptTouchEvent, onTouchEvent only see ACTION_DOWN


Is this what you are looking for:

"ACTION_CANCEL occurs when the parent takes possession of the motion, for example when the user has dragged enough across a list view that it will start scrolling instead of letting you press the buttons inside of it. You can find out more about it at the viewgroup documentation: onInterceptTouchEvent."

Hope that is the answer you are looking for:

Resources: Motion Event, Stack Overflow.