1、在主activity(如Activity)中设置一个接口(直接添加如下方法):
private ArrayList<MyOnTouchListener> onTouchListeners = new ArrayList<MyOnTouchListener>(
10);
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
for (MyOnTouchListener listener : onTouchListeners) {
listener.onTouch(ev);
}
return super.dispatchTouchEvent(ev);
}
public void registerMyOnTouchListener(MyOnTouchListener myOnTouchListener) {
onTouchListeners.add(myOnTouchListener);
}
public void unregisterMyOnTouchListener(MyOnTouchListener myOnTouchListener) {
onTouchListeners.remove(myOnTouchListener);
}
public interface MyOnTouchListener {
public boolean onTouch(MotionEvent ev);
}
2.使Fragment实现OnGestureListener接口并实现onFling方法,定义一个手势对象private GestureDetector detector,绑定该对象到Fragment,在Fragment的onCreateView中实例化主activity的接口即可实现调用Fragment的onFling方法。