前一段时间要实现一个广告的效果,就是viewpager嵌套了fragment,每个viewpager要可以删除掉,不再展示给用户。
最初做的时候,以为比较简单,认为:删除数据,通知适配器更新数据,然后就好了。结果完全不是那么回事。删除数据,更新适配器,但是仍然不能正常的删除掉fragment。经过不断的努力发现有两种方案。
第一种方案:
如果你已经写好了viewpager和FragmentPagerAdapter的子类,才发现了这个问题。那么就可以采用第一种方案。将FragmentPagerAdapter替换为FragmentStatePagerAdapter,另外重写自己Adapter的方法--getItemPosition(),让其返回PagerAdapter.POSITION_NONE即可;
第二种方案:
这个方案要修改的地方多一点,但是是一个更加主流的修改方案
http://stackoverflow.com/questions/10396321/remove-fragment-page-from-viewpager-in-android
另外想说的是stackoverflow.com真的是一个好地方