1. 预加载viewpager.setOffscreenPageLimit(2);,默认是预加载1,可以结合懒加载使用。

  如果希望进入viewpager,Fragment只加载一次,再次滑动不需加载(只有退出Activity),

可以重写viewpager adapter的getItem,去掉super

2.懒加载  

  public abstract class LazyFragment extends Fragment {

protected boolean isVisible;

/**

* 在这里实现Fragment数据的缓加载.

* @param isVisibleToUser

*/

    @Override

    public void setUserVisibleHint(boolean isVisibleToUser) {

      super.setUserVisibleHint(isVisibleToUser);

      if(getUserVisibleHint()) {

       isVisible = true;

       onVisible();

   } else {

     isVisible = false;

     onInvisible();

     }

      }

    protected void onVisible(){

     lazyLoad();

     }

    protected abstract void lazyLoad();

    protected void onInvisible(){}

}

public class OpenResultFragment extends LazyFragment{

    // 标志位,标志已经初始化完成。

    private boolean isPrepared;

    @Override

    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

     Log.d(LOG_TAG, "onCreateView");

    View view = inflater.inflate(R.layout.fragment_open_result, container, false);

       //XXX初始化view的各控件

        isPrepared = true;

    lazyLoad();

      return view;

   }

    @Override

    protected void lazyLoad() {

    if(!isPrepared || !isVisible) {

      return;

  }

    //填充各控件的数据

   }

}

转载于:https://www.cnblogs.com/bhm666/p/6772477.html

Fragment懒加载预加载相关推荐

  1. android Viewpager取消预加载及Fragment方法的学习

    1.在使用ViewPager嵌套Fragment的时候,由于VIewPager的几个Adapter的设置来说,都会有一定的预加载.通过设置setOffscreenPageLimit(int numbe ...

  2. android 移除fragment,Android Viewpager+Fragment取消预加载及Fragment方法的学习

    1.在使用ViewPager嵌套Fragment的时候,由于VIewPager的几个Adapter的设置来说,都会有一定的预加载.通过设置setOffscreenPageLimit(int numbe ...

  3. 图片预加载和懒加载的多种方法

    图片预加载和懒加载 图片懒加载 在渲染页面的时候,先将图片用一张默认图片代替,当图片到达浏览器可视区域时,才显示真实的图片. 这样的好处是,可以减缓服务器负担,加快初始界面的渲染速度. 实现方式: 使 ...

  4. 图片的懒加载与预加载

    懒加载 懒加载:也叫延迟加载,指的是在长网页中延迟加载图片的时机,当用户需要访问时,再去加载,这样可以提高网站的首屏加载速度,提升用户的体验,并且可以减少服务器的压力. 懒加载的实现原理是:将页面上图 ...

  5. 前端女娲补天 HTML(二)什么是懒加载,什么是预加载

    什么是懒加载 懒加载可以将页面上的图片src设置为空,真实路径放在data-original属性中,在图片进入可视区域后再将src设置为data-original的值. 具体实现 在DOM中获取所有懒 ...

  6. 超详细的图片预加载和懒加载教程

    最近接手一个项目 . 结果光安装依赖都出现了一堆 麻烦 . 好不容易处理完一个 , 又来一个 .头疼啊 看到之前有一些预加载的学习笔记.于是又查查找找 ,想想写写 把预加载和懒加载的笔记写完整 发现制 ...

  7. 图片的懒加载和预加载?

    一.写在前面 图片的懒加载和图片的预加载都是前端性能优化的一个方案,当然可能存在不同的应用场景,下面我们将总结一下这两个方案. 二.图片懒加载 图片的懒加载是什么? 图片的懒加载指的是在长网页中延迟加 ...

  8. 三十、PHP框架Laravel学习笔记——模型的预加载

    一.预加载 预加载,就是解决关联查询中产生的 N+1 次查询带来的资源消耗 我们要获取所有书籍的作者(或拥有者),普通查询方案如下: //获取所有书籍列表 $books = Book::all(); ...

  9. RecycviewView加载更多和预加载

    一.Recycleview的上拉加载更多 mRecyclerview.addOnScrollListener(mOnScrollListener);RecyclerView.OnScrollListe ...

最新文章

  1. Gym迎来首个完整环境文档,强化学习入门更加简单!
  2. springboot flask php,使用Vue,Spring Boot,Flask,Django 完成Vue前后端分离开发(二)
  3. Hadoop2配置详解
  4. Go 1.4 正式版发布,官方正式支持 Android
  5. flutter的安装与设置
  6. 实验三《实时系统的移植》 20145222黄亚奇 20145213祁玮
  7. [UVA - 11865]Stream My Contest(最小树形图+朱刘算法)
  8. matlab 安装jdbc.jar
  9. python中iskeydown什么函数_isKeyDown不能在Java中工作
  10. Zookeeper ZAB 协议分析
  11. python的版本会导致IBus设置(中文输入法)出错
  12. 计算从1加到该整数的值c语言,C语言编程题库与解析1.doc
  13. 大转盘html5源码,html5 大转盘
  14. 全面复盘Android开发者容易忽视的Backup功能
  15. elasticsearch 深入 —— 地理位置
  16. 页脚html模板,怎样用Photoshop设计漂亮的网页页脚模板实例教程
  17. GSR引擎专用工具更新使用贴子
  18. C++中换行endl和\n的区别
  19. 传输层的重要协议——TCP
  20. 广州王师傅揭秘未来20年最有前途的行业!——不要再错过下一个风口

热门文章

  1. elemenetui 布局_2020 零基础到快速开发 Vue全家桶开发电商管理系统(Element-UI)主页布局开发-Go语言中文社区...
  2. python简单命令语句_python基础教程之[基础学习]MySQL常用语句命令总结|python基础教程|python入门|python教程...
  3. 计算机在化学中的应用与探索,计算机在化学中的应用
  4. linux nvm 管理 nodejs,Nodejs 版本管理器: nvm 介绍
  5. android 传感器 应用,Android移动设备中传感器的应用
  6. ideahtml里面没有提示_抖音上爆火的苹果充电提示音,安卓手机也可以设置了!!...
  7. 工信部证书含金量_关于推荐考取BIM工程师、装配式工程师证书
  8. c++双向列表释放_Python列表生成式12个小功能,你常用哪几个?
  9. java中html的树状_HTML中的树状选择
  10. python移动文件中某个内容_如何在Python中移动文件