2011-11-02 3 views
0

Android에서는 사용자 접촉과 사용자 긴 터치를 캡처하려고합니다. 나는 Activity를 가지고 있으며 다양한 스크린 터치를 다루기 위해 onTouchEvent() 메서드를 오버라이드한다.Android : Activity.onTouchEvent() 및 View.setOnLongClickListener() 기능을 결합하는 방법

사용자 인터페이스 선택 항목에 "Long Presses"를 포함하려고합니다.

내가 대체 할 수있는 Activity.onLongTouchEvent()을 찾을 수 없습니다.

내 응용 프로그램은 또한 서피스 뷰 SurfaceView을 가지고 있으며, 나는이 작업을 수행 할 수있는 참조 : 그 코드를 구현하는 경우가해야처럼 정확히 작동

sv.setOnLongClickListener (new View.OnLongClickListener() 
{ 
    @Override 
    public boolean onLongClick (View v) 
    { 
     SendAToast(); 
     return false; 
    } 
}); 

.

그러나 이제는 "Long Press"가 될만큼 충분히 화면을 터치하지 않아도 내 onTouchEvent() 코드가 호출되지 않습니다.

아무도이 두 비트의 코드를 함께 사용할 수있는 방법을 알고 있습니까?

편집 :이 게시 된 후

이, 동료가 나에게 "OnGestureListener"인터페이스를 보여 주었다.

http://www.ceveni.com/2009/08/android-gestures-detection-sample-code.html

나는 긴 프레스를 캡처 인터페이스를 사용하고, 심지어 화면합니다 (OnLongClickListener하지 않는 한)와 함께 작동하도록 좌표를 제공합니다 다음은 그 예입니다. 그래서 트릭을하는 것처럼 보입니다.

왜이 기능이 자동으로 활동의 일부가되지 않습니까? 확실히 핵심 기능처럼 보입니다.

답변

1

나는 온 터치 물건을 액티비티 대신 뷰의 onTouchEvent로 옮길 것이다.

+0

그게 처음부터 생각해 봤어야 할 것이지만, 그것이 존재했는지 전혀 몰랐습니다. 자, 나는 너무 많은 코드가 있다고 생각하고있다. 우리가 버전 2로 이동할 때 나는 그 생각을 명심해야 할 것입니다. – Rich

관련 문제