gpt4 book ai didi

android - 如何在 ViewPager 中禁用特定页面滑动

转载 作者:行者123 更新时间:2023-11-29 00:13:33 25 4
gpt4 key购买 nike

我的应用程序中有一个包含 5 个 fragment 的 ViewPager 小部件。我有 3 个用于手动翻页的按钮。对于第 4 和 5 页,我希望用户只能通过按下按钮而不是通过滑动来访问。所以我需要通过它们禁用滑动事件,而不是其他人。此外,在第 4 或 5 页时,滑动将被完全禁用,后退按钮将出现在操作栏上。如何实现?

List<Fragment> l = new ArrayList<>();
l.add(Fragment.instantiate(this, Osman.class.getName()));
l.add(Fragment.instantiate(this,Ahmet.class.getName()));
l.add(Fragment.instantiate(this,Kurik.class.getName()));
l.add(Fragment.instantiate(this,Sorok.class.getName()));
l.add(Fragment.instantiate(this,Yah.class.getName()));
SliderAdapter sa = new SliderAdapter(getSupportFragmentManager(),l);
vp = (ViewPager) findViewById(R.id.viewPager);
vp.setAdapter(sa);

最佳答案

按照这个问题,以便能够随意禁用滑动 How do disable paging by swiping with finger in ViewPager but still be able to swipe programmatically?

并将其与您的 SliderAdapter 相结合,以控制哪些页面可滑动。

如果您点击上面的链接,在您的 ViewPager 子类上,您可以在 onTouchEvent(MotionEvent event) 上添加一些 GestureDetector 并将其与您的事件一起提供,例如 Android: How to handle right to left swipe gestures

通过这样做,您现在将拥有一些 onSwipeRight 并在那里管理您的逻辑,将是否应滑动页面或下一步去向的问题委托(delegate)给适配器。

关于android - 如何在 ViewPager 中禁用特定页面滑动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28360712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com