Fragment的状态丢失

来源:互联网 发布:java 健身房管理系统 编辑:程序博客网 时间:2024/05/18 00:49
1:问题描述


代码:


场景:
场景:
viewpager绑定smarttablayout,每个viewpager里面绑定一个fragment
使用fragmentpagerAdapter


错误:当我们绑定的fragment过多的时候,切换到后面的fragment再返回第一页的时候,发现数据被清除了;




2:问题分析


我们使用fragmentpagerAdapter的时候,他会一次性把所有fragment都load到内存中,如果内存负荷过大,那么系统就会把之前fragment的状态清除掉,它的特点就是只能加载较少页面






3:解决方法


使用fragmentsTATEpager.
fragmentStatePagerAdapter和fragmentPagerAdapter的区别:
当他把之前的页面干掉之后,会保存他的状态,再切换回来的时候,会把数据重新加载出来
0 0