FragmentPagerAdapter动态添加fragment和删除fragment

FragmentPagerAdapter动态添加fragment和删除fragment,第1张

做了一个关于viewPager动态添加fragmeng以及删除fragment的功能,但是奇怪的是,移除fragment的时候,调用了notifyDataSetChanged()方法,但是fragment并没有更新成新的,后来打印日志发现根本没有调用适配器中的instantiateItem()方法,而这个问题就需要你重写getItemPosition()方法,并且返回值POSITION_NONE,之后发现虽然调用了instaniateItem()方法,可是仍然没有展示新的fragment,在于adapter回去缓存的fragment,所以你需要重写getItemId()这个方法。其实还有一种省事的方法就是使用FragmentPagerStateAdapter来适配,但是我就是不写。

viewpager有fragmentpageradapter和fragmentpagerstateadapter,就是用来给它添加fragment的,如果是动态添加的,你就控制adapter动态添加数据就可以了,不会这两个adapter的话可以百度


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11528751.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存