touchslop
slop 은 출렁거림을 뜻한다.안드로이드에서 touchslop 은 touch 할때 출렁거림(slop) 의 정도를 이야기 한다. 역시 자신의 모국어라서 단어는 잘 만들어내는 듯 하다. 조금 부럽다 ㅜ.ㅜ
안드로이드는 이 touchslop 을 정의해 줌으로써 의도하지 않은 scrolling 을 줄이는 역할을 한다.
예를 들면, 갑자기 화면에 touch 를 하게 되면 사람인지라 손이 살짝 미끄러질 수 있다.(아주 미세하게라도.) 그러면 그것을 drag 로 인식해서 scroll 을 할 수도 있고, 아 이정도 drag 는 drag 가 아니라 그냥 살짝 미끄러진 정도구나 라고 판단할 수도 있다. 그 기준이 바로 touchslop 이라고 이해하면 될 듯 하다.
아래처럼 View 에서 onTouchEvent 를 override 하게 될 때 사용할 수 있다.
final ViewConfiguration configuration = ViewConfiguration .get(getContext()); mTouchSlop = configuration.getScaledTouchSlop(); ... @Override public boolean onTouchEvent(MotionEvent ev) { case MotionEvent.ACTION_MOVE: final int deltaX = (int) (mLastMotionX - x); boolean xMoved = Math.abs(deltaX) > mTouchSlop;
댓글 없음:
댓글 쓰기