2012-12-05 1 views
1

그래서 두 개의 버튼이 있으며 동시에 두 버튼을 누르기를 원합니다. 내가 처음 누르면 그것은 지금까지 D.에게멀티 터치 문제 : 동시에 두 개의 버튼을 누르면 손가락 하나만 건드린 것처럼 느껴 집니까?

를 (피아노 노트 등) "C", 다른 로그를 기록합니다

@Override 
    public boolean onTouch(View v, MotionEvent event) { 

     int action = event.getActionMasked(); 

     switch (event.getAction() & MotionEvent.ACTION_MASK){ 

     case MotionEvent.ACTION_DOWN: 
      switch (v.getId()) { 
       case R.id.cnotebutton: 
        Log.i("C", "C1"); 
        return true; 
       case R.id.c2notebutton: 
         Log.i("D", "D1"); 
         return true; 
       default: 
       } 

       break; 
      case MotionEvent.ACTION_UP: 

       break; 
      case MotionEvent.ACTION_POINTER_DOWN: 

       break; 
      case MotionEvent.ACTION_POINTER_UP: 

       switch (v.getId()) { 
        case R.id.cnotebutton: 
         Log.i("C", "C2"); 
         return true; 
        case R.id.c2notebutton: 
          Log.i("D", "D2"); 
          return true; 
        default: 
        } 
       break; 
      case MotionEvent.ACTION_MOVE: 

       break; 
      default: 

     } 
     return true; 
    } 

내가 C1과 C2는 경우를 구별하기 로그인하지만, 모든 시간 나는 두 손가락으로 동일한 버튼을 건드린 것처럼 C1, C2 또는 D1, D2 만 얻는 버튼을 누른다. 나는 어느 손가락이 먼저 가리키는 지에 따라 C1, D2 또는 D1, C2를 얻어야한다. 어떤 제안? 어쨌든 나는 피아노 견본 프로젝트를 찾지 못했지만 이것이 효과가 없거나 내 접근법이 완전히 잘못 될 경우 분명히 도움이 될 것입니다. 있어요?

미리 감사드립니다.

답변

0

나는 public boolean onInterceptTouchEvent (MotionEvent ev)을 찾고 있습니다. 살펴보기