我的方法有问题
@Override
public boolean onTouchEvent(MotionEvent event) {
return gestureDetector.onTouchEvent(event);
}
永远不会被调用。任何想法为什么会这样?我正在构建一个谷歌的 API 4.0.3 应用程序,并且我正在尝试为我的 ViewFliper 启用滑动。但是,它不能工作,因为从不调用触摸。
代码:
public class MainActivity extends SherlockMapActivity implements ActionBar.TabListener {
那是我活动的宣言。并检测我已经实现的滑动:
SimpleOnGestureListener simpleOnGestureListener = new SimpleOnGestureListener(){
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,float velocityY) {
float sensitvity = 50;
if((e1.getX() - e2.getX()) > sensitvity){
SwipeLeft();
}else if((e2.getX() - e1.getX()) > sensitvity){
SwipeRight();
}
return true;
}
};
GestureDetector gestureDetector= new GestureDetector(simpleOnGestureListener);
谢谢你。
编辑:
主.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<ViewFlipper
android:id="@+id/ViewFlipper"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#ffffff" >
<include
android:layout_height="match_parent"
layout="@layout/mymain" />
<include layout="@layout/secondmain" />
<include layout="@layout/thirdmain" />
<include layout="@layout/fourthmain" />
</ViewFlipper>
</LinearLayout>
Edit2:我所有包含的布局都实现了滚动视图。滚动是否有可能接受这些事件并处理它们?如果是这样,如何检测手势?