在 ViewPager 中禁用滑动
Disable swiping in ViewPager
这几天我尝试禁用 SWIPE。我在 Whosebug 上阅读了很多对话,但所有这些都不起作用或太旧了。我有下一个Button
。只有在下一个 Button
时,用户才应该在不滑动的情况下进入下一个 Layout
。
所以有人有禁用滑动的解决方案吗?
为了实现这样的功能,您需要创建自己的 ViewPager 子class。
它应该有一个新字段:例如
private boolean swipeEnabled;
您还需要覆盖 onInterceptTouchEvent
和 onTouchEvent
并检查用户当前是否启用/禁用了 ViewPager
。
例如
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
return isEnabled && super.onInterceptTouchEvent(event);
}
然后在您托管 ViewPager
的代码中,您应该有一个启用和禁用方法,可以根据您的需要更改该新字段的值。
确保在您的 xml 布局中使用这个新的 class 而不是默认的 ViewPager class。
这几天我尝试禁用 SWIPE。我在 Whosebug 上阅读了很多对话,但所有这些都不起作用或太旧了。我有下一个Button
。只有在下一个 Button
时,用户才应该在不滑动的情况下进入下一个 Layout
。
所以有人有禁用滑动的解决方案吗?
为了实现这样的功能,您需要创建自己的 ViewPager 子class。
它应该有一个新字段:例如
private boolean swipeEnabled;
您还需要覆盖 onInterceptTouchEvent
和 onTouchEvent
并检查用户当前是否启用/禁用了 ViewPager
。
例如
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
return isEnabled && super.onInterceptTouchEvent(event);
}
然后在您托管 ViewPager
的代码中,您应该有一个启用和禁用方法,可以根据您的需要更改该新字段的值。
确保在您的 xml 布局中使用这个新的 class 而不是默认的 ViewPager class。