1、使用setOffscreenPageLimit()方法可以限制它一次加载几页,它的默认值1,google建议也是维护一下小的加载页数3-4;
但是只要手机性能稍微弱一点和系统内存更不上,都会导致切换的时候出现部分数据显示不出,白屏;尤其是在红米系统,如果总页数大于4,个人建议设置2
2、使用viewpager做懒加载,也就是在viewpager缓存界面的时候;当前界面没有显示就先加载布局,显示的时候加载网络数据;
使用Fragment的setUserVisibleHint()方法做实现,或者使用ViewSub异步加载布局文件
3、在viewpager中嵌套了viewpager来回切换外层的fragment,导致里面的fragment卡顿,
这时候里面的viewpager的adapter可以使用getChildFragmentManager()方法缓存,控制。
4、使用viewpager的FragmentPagerAdapter/FragmentStatePagerAdapter做数据填充时,第二次添加给fragment设置的数据出现不能生效。
原因在于FragmentTransaction对象会保留fragment的对象,除非fragment是被FragmentTransaction 对象remove的才会彻底删除fragment
原文地址:http://blog.51cto.com/12539515/2096105
时间: 2024-10-15 21:32:12