2012-05-07 3 views
6

내 앱에서 멀티 터치를 구현하는 중에 예기치 않은 결과가 발생합니다. 나는 하나 이상의 포인터에 대한 데이터를 얻지 못한다. 브라우저에서 손가락을 대고 GestureDetector로 꼬집기 동작을 감지 할 수 있기 때문에 휴대 전화의 멀티 터치가 확실하게 작동하지만 다음 샘플은 화면을 터치하는 손가락 수에 관계없이 action=0 pointers=1을 인쇄합니다. MotionEvent.getPointerCount()는 항상 1입니다.

내가 필요 구성/AndroidManifest를 또는 활동 창조에 뭔가가 있나요

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    findViewById(R.id.ll1).setOnTouchListener(new OnTouchListener() { 

     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      Log.d("TAG","onTouch action="+event.getAction()+" pointers="+event.getPointerCount()); 
      return false; 
     } 
    }); 
} 

레이아웃 :

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/ll1" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 
</LinearLayout> 

답변

19

문제는 내가 때문에 새로운 터치 이벤트가 있고, onTouch에서 false를 반환 한 것을 생성되지 않았습니다.

+0

감사합니다. 감사합니다. 감사합니다. 이것이 문서의 어딘가에서 설명되기를 바랍니다. – user1676075