【Fragment使用】(二)Android之取消ViewPage+Fragment的预加载
16lz
2021-01-26
转载自:http://www.cnblogs.com/lee0oo0/p/3713391.html
Android之取消ViewPage+Fragment的预加载
用过ViewPage+Fragment组合的童鞋自然知道这个问题,没有遇到的同学祝愿你们永远不会遇到,呵呵。直接上关键代码
注释:setUserVisibleHint每次fragment显示与隐藏都会调用,他的调用顺序由于onCreate,所以需要一些常量进行判断
1 2 3 4 5 6 7 8 9 10 11 12 13 | private boolean mHasLoadedOnce = false ; @Override public void setUserVisibleHint( boolean isVisibleToUser) { if ( this .isVisible()) { // we check that the fragment is becoming visible if (isVisibleToUser && !mHasLoadedOnce && mArrayList== null ) { // async http request here mHasLoadedOnce = true ; } } super .setUserVisibleHint(isVisibleToUser); } |
由于setUserVisibleHint优于onCreate调用,所以当onCreate调用完毕setUserVisibleHint就不会触发,这时需要在首个显示的fragment调用setUserVisibleHint方法
1 2 3 4 5 6 | @Override public void onActivityCreated(Bundle savedInstanceState) { // TODO Auto-generated method stub setUserVisibleHint( true ); super .onActivityCreated(savedInstanceState); } |
这个是设置viewpager保留多少个显示界面,也就是设置预加载fragment的个数:
1 | pager.setOffscreenPageLimit( 3 ); |
更多相关文章
- Java乔晓松-android中调用系统拍照功能并显示拍照的图片
- android如何为listview的每项中edittext控件添加textwacher
- Android在代码中打开Wifi、移动网络和GPS
- ViewPage滑动加载大图和点击关注效果《IT蓝豹》
- android中Bitmap用法(显示,保存,缩放,旋转)实例分析
- Android中CMake的使用之四调用第三方库的实战
- React Native开发指南
- Android开发之Camera分析(二)
- 【 Android(安卓)10 系统启动 】系列 -- Launcher(应用门户)