0

我想让 ViewPager 停止捕获 ViewPager 容器之外的滑动事件,以便用户在像 TikTok 这样的单次滑动期间永远不能滚动超过一页。如果您在没有释放触摸的情况下滑动 Tiktok 视频(用两根手指并保持滚动),它将不允许播放下一个视频。

我做了什么 :

viewPager2.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
            @Override
            public void onPageScrollStateChanged(int state) {
                super.onPageScrollStateChanged(state);
                if (state == SCROLL_INDICATOR_END) {
                    viewPager2.setUserInputEnabled(false);
                } else {
                    viewPager2.setUserInputEnabled(true);
                }
            }
        });

建议表示赞赏。

4

1 回答 1

-1

您可以使用 RecylcerView 代替 viewpager 和 StartSnapHelper 来实现此效果。

https://blog.mindorks.com/using-snaphelper-in-recyclerview-fc616b6833e8

于 2019-10-25T18:50:21.227 回答