viewpager+fragment的懒加载和缓存页面优化

一, 懒加载实现,
1,创建LazyFragment, 是懒加载的fragment, 要实现完全意义的懒加载, 我试了试, 即便是设置.setOffscreenPageLimit(2);//设置缓存view 的个数(实际有3个,缓存2个+正在显示的1个), 为0 或是为1 他还是内部先实现了预加载, 所以不管用, so, 那就实现页面可见后的数据懒加载咯, 也可以实现功能

-->1, 在LazyFragment的成员变量中设置两个标志位,

Paste_Image.png

-->2, 在onCreate方法中把 isPrepared = true 让后尝试加载, 在setUserVisibleHint方法中也是只要是页面可见, 也进行懒加载,

Paste_Image.png
Paste_Image.png
Paste_Image.png
Paste_Image.png

2, 现在只是实现了数据的懒加载, 当页面划走的时候, 有时候list还要保存当前位置, 这是后就需要缓存移除的页面了, 我认为最优化的解决方式是:
复用Fragment的RootView
步骤1:在onDestroyView方法内把Fragment的RootView从ViewPager中remove

Paste_Image.png

步骤2:在onCreateView方法内复用RootView

Paste_Image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容