【发布时间】:2017-10-25 06:55:19
【问题描述】:
我想通过在我的 MainActivity 中滑动来切换活动。我从 GestureDetectorCompat 声明了一个对象,并在 onCreate 方法中对其进行了初始化,如下所示:
gestureObject = new GestureDetectorCompat(MainActivity.this, new GestureListener());
另外,我像这样覆盖 onTouchEvent:
@Override
public boolean onTouchEvent(MotionEvent event) {
this.gestureObject.onTouchEvent(event);
return super.onTouchEvent(event);
}
我的 MainActivity 从 AppCompatActivity 扩展并实现 NavigationView.OnNavigationItemSelectedListener、OnMenuItemClickListener。
GestureListener 代码为:
private class GestureListener extends GestureDetector.SimpleOnGestureListener {
@Override
public void onLongPress(MotionEvent e) {
Log.e(TAG, "long pressed");
super.onLongPress(e);
}
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
Log.e(TAG, "on Flig");
if (e2.getX() > e1.getX()) {
Log.e(TAG, "left to right");
}
return true;
}
}
但它不起作用。
是否与navigationView有关?
我能做什么?
【问题讨论】:
-
你可能想看看ViewPager
-
我有活动,不是片段。
-
它是如何不起作用的:崩溃、错误消息、冻结、意外行为或成群的蝗虫?
-
什么都不做。
标签: java android android-gesture