android - 在 ViewPager 中动态跳过页面

标签 android android-fragments android-viewpager android-adapter fragmentstatepageradapter

我有一个 ViewPager,它通过 FragmentStatePagerAdapter 保存 Fragment。假设寻呼机最初包含以下页面( fragment ):

A - B - C - D

当用户滑动时,他可以从A移动到B BC 等。 但是有些情况下,当用户在A页面上更改了一些选项,他可以不移动到B,而是移动到 C:

A - C - D

然后用户返回到 A,修改一些内容并重新启用 B:

A - B - C - D

我怎样才能实现这种非常动态的行为?当用户更改某些内容然后重新填充 ViewPager 时,我无法在任何时候添加 Fragment,因为它很慢并且会中断流程。

最佳答案

我们也有同样的情况,我们通过维护一个boolean ArrayList来解决这个问题。这里的页面是 fragment 。在 Fragment 上,我们编写了一个接口(interface)来更新 ArrayList。这个接口(interface)是在父 Activity 上实现的。在 ViewPager 的每次滑动中,我们都在检索 bool ArrayList。在 ViewPager 上,我们在 setOnPageChangeListener 中覆盖了 onPageSelected。

下面是一段代码:

pageIndicator.setOnPageChangeListener(new OnPageChangeListener() {

    @Override
    public void onPageSelected(int position) {
        // TODO Auto-generated method stub

        pagesPageBreakInfoList = activityContext.getBooleanList();
        currentPageNumber = position;

        if (!pagesPageBreakInfoList.get(position)) {
            if (currentPageNumber > previouspagenumber) {
                previouspagenumber = currentPageNumber;
                if (numberofSubmodule == (position + 1)) {
                    viewPager.setCurrentItem(position - 1);
                } else {
                    viewPager.setCurrentItem(position + 1);
                }
            } else {
                previouspagenumber = currentPageNumber;
                viewPager.setCurrentItem(position - 1);
            }
        } else {
            previouspagenumber = currentPageNumber;
        }
    }

    @Override
    public void onPageScrolled(int arg0, float arg1, int arg2) {
        // TODO Auto-generated method stub
    }

    @Override
    public void onPageScrollStateChanged(int arg0) {
        // TODO Auto-generated method stub
    }
});

关于android - 在 ViewPager 中动态跳过页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19861445/

相关文章:

c# - Android 图片上传到 C# .NET REST 服务

java - 如何从 "Recent opened apps"获取屏幕截图?

android - onSomeEventListener 崩溃

安卓。棒糖。 RecyclerView 不滚动

android - ViewPager 禁止向某个方向滑动

安卓 ClassNotFoundException : Didn't find class

java - Acra:如何从继承自 ReportSenderFactory 的自定义类中检索 token

java - 单击按钮滑动到下一个 fragment

android - TestFairy 构建 apk 后初始化 fragment 上的 VerifyError

android - 图片浏览器滑动