ViewPager配合Fragment懒加载的一个坑

ViewPager搭配Fragment做懒加载,这个很常见。需要小心的是FragmentViewPager中的生命周期,这个不多说。

最近遇到一个坑,这个坑的关键点是

1
ViewPager.setOffscreenPageLimit();

假设通过这个方法设置了一个值(比如2),然后在ViewPager中滑动加载了2个Fragment后,第三个Fragment的加载会出现问题,具体表现是该调用的方法都有调用,但是就是数据加载出问题。

数据加载我是用了RxLifecycle绑定到FragmentEvent.DESTROY_VIEW,初步怀疑是生命周期在作祟。

目前的解决方法是先将setOffscreenPageLimit设置为和自己加入的Fragment数量一致。比较好的解决方法是自定义ViewPager实现懒加载。

你可能是数据推荐的受害者 hexo与github建站记

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×