@Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_MOVE: return mCurrentState.handleMoveTouchEvent(event); case MotionEvent.ACTION_CANCEL: case MotionEvent.ACTION_UP: return mCurrentState.handleUpOrCancelTouchEvent(event); } return false; }