Kotlin安卓开发:ViewPage的动态刷新

总是遇到一个问题:

无法动态刷新ViewPage里的Fragment

ViewPage里使用的是Fragment,list_fg就是一个fg集合、

  list_fg.removeAt(msg.arg1)
  Log.d("msg:",msg.arg1.toString())
  iwh_view_page_adapter.notifyDataSetChanged()

这里接收要移除的fg下标就是msg.arg1

然后调用view_page_adapter.notifyDataSetChanged()

感觉是可以,实际无效、

我们实现viewPage的adapter类有两个

最开始用得是:FragmentPagerAdapter

发现,出现一个问题,删除第一个fg,结果最后一个fg没了。然后,下次进入后,第一个没了,最后一个正常、

而且从最后开始删除,就不会出现这个情况,百度一下,发现是继承的这个adapter类的问题,他会缓存当前fg和旁边的fg

所以没办法立即删除。

默认getItemPOsition会返回无状态改变,这里要重写一下,返回强制改变状态。这个可以百度相关资料,缺点是会重新绘制所有的fg

换成:FragmentStatePagerAdapter

就好了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值