0

我有一个图像视图,如果我触摸该图像视图,它会执行一些操作,否则如果我双击该图像视图需要执行一些操作。怎么可能。?

4

1 回答 1

3

首先创建一个 GestureDetector 和一个监听器。然后将其绑定到扩展 GestureDetector.SimpleOnGestureListener 的类。

private GestureDetector detector;  
private ImageView mImageView;

@Override  
public void onCreate(Bundle savedInstanceState) {  
  super.onCreate(savedInstanceState);  
  detector = new GestureDetector(this, new MyGesturesListener());  
  // TODO find your image view
  mImageView.setOnTouchListener(new OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            detector.onTouchEvent(event);
            return true;
        }
    });
}

然后可以实现不同手势的方法:

class MyGesturesListener extends GestureDetector.SimpleOnGestureListener{  
  @Override  
  public boolean onSingleTapUp(MotionEvent ev) { 
    // TODO handle single tap 
    return true;  
  }  
  @Override  
  public boolean onDoubleTap(MotionEvent ev) {  
    // TODO handle double tap
    return true;  
  }
}  
于 2012-11-27T12:24:24.523 回答