以前都是用GestureDetector都是跟Activity的onTouchEvent方法结合,实现全屏幕的滑动捕获,而本次由于项目需要实现横幅广告轮播功能,轮播包括自动滚动和手动滑动,因此我打算在手动滑动上依旧采用GestureDetector去实现,与之前的不同,这次不能与onTouchEvent去组合了(是可以通过这种方式组合的,只是麻烦点),因为不需要全屏滑动,只有手在轮播图的区域内滑动才有效果,因此本次采取的是对轮播图区域绑定onTouchListener,然后将event传递到GestureDetector对象中代码如下:
viewFlipper.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
return detector.onTouchEvent(event);
}
});
GestureDetector 需要重写下面