如何使用ViewPager多次滑动相同的片段?

时间:2014-04-28 09:34:59

标签: android android-fragments android-viewpager

我想使用ViewPager来浏览多个Fragments,所有这些fragments都与同一个Layout相关,因此我想要滑动相同的片段多次,如下图所示:

enter image description here

如图所示,它是相同的片段,但分配了不同的数据。

我使用常规页面适配器:

public class LightPageAdapter extends FragmentStatePagerAdapter {
    public LightPageAdapter(FragmentManager fragmentManager) {
        super(fragmentManager);
    }

    public Fragment getItem(int i) {

        switch (i) {
        case 0:
            // Fragment for Center side
            return new Light_Center_frag();
        }
        return null;

    }

    @Override
    public int getCount() {

        return 1;

    }

}

我想在执行此操作时处理两个点:

1 - 要滑动的片段数量是动态的(在run_time中获取)。

2 - 我不想在滑动时更改页面内容,但我确实想获得滑动感,如下图所示:

enter image description here

1 个答案:

答案 0 :(得分:2)

在不知道如何获取要在片段中显示的数据的情况下,您可以尝试在实例化片段时使用Bundle。

Bundle args = new Bundle(); args.putExtra(KEY, someData);

然后

Fragment fragment = new Light_Center_frag();
fragment.setArguments(args);
return fragment;

在您的片段中,您可以调用

getArguments();

检索Bundle并使用其中的任何内容。