自从Android 3.0开始,出现了Fragment。现在,基本上所有的APP都会使用Fragment进行页面切换。
最近在写Fragment时,需要从网络获取数据,然后在fragment里面填充数据,所以就打算使用懒加载进行数据加载。
关于懒加载的资料,可参考以下文章(并不是做广告):
不过,我并没有使用ViewPager来显示Fragment,而是使用FragmentManager来对Fragment进行管理,但是在运行的时候却发现错误。
于是,我将onVisible()和onInvisible()里面都写入Log信息,然后再次运行,发现Log信息并没有打印。
所以,可得出以下结论:
只有当使用ViewPager等容器类组件显示Fragment时,才会调用setUserVisibleHint()方法,否则不会调用。
因此,如果使用FragmentManager来对Fragment管理时,不能使用懒加载进行加载数据。