替换ViewPager中的碎片位置



我有包含两个片段[ Fragment 1] [Fragment 2]ViewPager。现在,根据[Fragment 1]中的选择,将向ViewPager添加一个新片段它看起来像这个

[Fragment 1] [NewAddedFragment] [Fragment 2]

并且还基于第一片段中的用户选择,我可以从ViewPager中移除NewAddedFragment。然后它会看起来像

[ Fragment 1] [Fragment 2]

查看实现"FragmentPagerAdapter",并且某些内容将包含一个集合类型字段,如支持适配器的ArrayList。

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

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

公共类BookPagerAdapter扩展FragmentPagerAdaper{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));

最新更新