title: Handling 3 finger tap in Android
body: <p>I am using OnTouchListener to capture multitouch events for ex. a 3 finger tap , I could able to detect up to 2 fingers. i.e <code>event.getPointerCount()</code> returns upto 2.
  Even same with <code>onTouchEvent()</code>. Is there any other API for handling this ?
  I have enabled 3 finger tap detection on my test device.
  getPointerCount() works in Motorola Droid with Android 4.1.2 but not in HTC One V with Android 4.0.3
  <a href="https://gist.github.com/raveebhat/6621262" rel="nofollow">This</a> is what I have done so far:</p>
  
  <pre><code>package com.example.toucheventsample;
  
  import android.os.Bundle;
  import android.app.Activity;
  import android.view.Menu;
  import android.view.MotionEvent;
  import android.view.View;
  import android.view.View.OnTouchListener;
  import android.widget.VideoView;
  
  public class TouchEventActivity extends Activity implements OnTouchListener{
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
  
      VideoView videoView = (VideoView) findViewById(R.id.video);
      videoView.setOnTouchListener(this);
  }
  
  @Override
  public boolean onCreateOptionsMenu(Menu menu) {
      // Inflate the menu; this adds items to the action bar if it is present.
      getMenuInflater().inflate(R.menu.touch_event, menu);
      return true;
  }
  
  public boolean handleTouchEvent(MotionEvent event) {
      boolean handled = true;
      int action = event.getAction();
      int count = event.getPointerCount();
      switch (action &amp; MotionEvent.ACTION_MASK) {
  
          case MotionEvent.ACTION_POINTER_UP:
              if (3 == count) {
                  // handle 3 finger tap
              }
              break;
      }
      return handled;
  }
  
  @Override
  public boolean onTouch(View view, MotionEvent event) {
      int count = event.getPointerCount();
      handleTouchEvent(event);
      return true;
  }
  }
  </code></pre>