0

전화 연결 목록을 표시하고 항목을 클릭하려고 시도하고 이중 클릭이 완료되면 이전 clickeditem이 있어야합니다 고려하고 전화를 겁니다. 토크백 접근성이 활성화 된 경우와 유사합니다.Android : onDoubleTap은 목록 항목의 가장자리를 두드리는 경우에만 감지되며 대신 onItemClick이 호출됩니다.

그러나 내가 listitem을 두 번 탭하려고 할 때마다 onItemClick이 호출되고 있습니다. 그러나 목록 항목의 가장자리를 두 번 탭하면 doubleTap 이벤트가 캡처됩니다.

아무도 도와 줄 수 없습니까?

또한 수행 방법에 대한 도움말 : 기본적으로 목록의 첫 번째 항목을 선택하고 첫 번째 연락처를 말하고 사용자가 스크롤하면 다음 연락처를 읽고 해당 목록 항목을 강조 표시해야합니다.

답변

0

https://stackoverflow.com/a/6290044에서 재현 :

public class MyView extends View { 

    GestureDetector gestureDetector; 

    public MyView(Context context, AttributeSet attrs) { 
    super(context, attrs); 
    // creating new gesture detector 
    gestureDetector = new GestureDetector(context, new GestureListener()); 
    } 

    // skipping measure calculation and drawing 

    // delegate the event to the gesture detector 
    @Override 
    public boolean onTouchEvent(MotionEvent e) { 
    return gestureDetector.onTouchEvent(e); 
    } 


    private class GestureListener extends GestureDetector.SimpleOnGestureListener { 

    @Override 
    public boolean onDown(MotionEvent e) { 
     return true; 
    } 
    // event when double tap occurs 
    @Override 
    public boolean onDoubleTap(MotionEvent e) { 
     float x = e.getX(); 
     float y = e.getY(); 

     Log.d("Double Tap", "Tapped at: (" + x + "," + y + ")"); 

     return true; 
    } 
    } 
} 
+0

하이는 onDoubleTap을 (구현)하지만 컨트롤이 내가 목록 항목의 가장자리 (화면의 오른쪽 또는 왼쪽 가장자리 중 하나)에 doubletap 경우에만이 방법오고 있지만, listitem에 doubletapping 할 때 해당 이벤트를 itemselect 이벤트로 가져오고 onDoubleTap()으로 이동하지 않습니다. – bharath

관련 문제