替换ViewPager中的碎片位置

时间:2013-04-09 13:54:57

标签: android android-viewpager

我的ViewPager包含两个片段[ Fragment 1] [Fragment 2]。现在,基于[Fragment 1]中的选择,新的片段将添加到ViewPager 它看起来像这样

[Fragment 1] [NewAddedFragment] [Fragment 2]

并且还根据第一个片段中的用户选择,我可以从NewAddedFragment中删除ViewPager。然后它看起来像

[ Fragment 1] [Fragment 2]

1 个答案:

答案 0 :(得分:-1)

查看实施的“适配器”  'FragmentPagerAdapter'和某些内容将包含一个集合类型字段,如支持适配器的ArrayList。

根据dataStructure的实现,您可以通过在fragmentpageradapter上调用相应的add,set,insert方法来更改基础集合。

然后,您在ViewPager中获取新页面的下一次调用应反映对基础集合的更改。如果没有,你可能不得不在FragmentManager上调用'commit',但我认为在这种情况下不需要。

公共类BookPagerAdapter扩展FragmentPagerAdapter {     private int currentPage = 0;     private ArrayList mFragments;

public BookPagerAdapter(FragmentManager fm) {
    super(fm);
    mFragments = new ArrayList<Fragment>();
    mFragments.add(new PageFragment(BitmapFactory.decodeResource(getResources(),
               R.drawable.icon_construction32), "TitlePage")); 


    }

更改集合的示例:

bpa.mFragments.add(new PageFragment(map));