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;

  }

    //填充各控件的数据

   }

}

Fragment懒加载预加载的更多相关文章

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

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

  2. h5预加载代码

    预加载 <!--预加载--> <div class="preload"> <div class="prezoom"> < ...

  3. Android中ViewPager+Fragment取消(禁止)预加载延迟加载(懒加载)问题解决方案

    转载请注明出处:http://blog.csdn.net/linglongxin24/article/details/53205878本文出自[DylanAndroid的博客] Android中Vie ...

  4. viewpager和fragment预加载的解决

    在使用Viewpager和fragment处理中会出现预加载的问题,最近看别人的代码,终于找到了一个很好的处理方法 能有效的解决预加载的问题,在fragment都继承一个重写setUserVisibl ...

  5. Fragment禁止预加载

    项目中经常会用到ViewPager+Fragment组合,然而,有一个很让人头疼的问题就是,去加载数据的时候由于ViewPager的内部机制所限制,所以它会默认至少预加载一个. 1.既然说是ViewP ...

  6. android viewpage预加载和懒加载问题

    1.本人理解懒加载和预加载问题某种情况下可以归结为一类问题,下面我就说一下我遇到的预加载问题和懒加载问题及解决的相应方法: - [1 ] 预加载问题        描述:我用到了三个fragment. ...

  7. Fragment 懒加载

    我们在遇到Activity嵌套Fragment的时候经常会遇到多个Fragment页面同时加载数据,一开始的时候就初始化很多页面,有的甚至进入页面的时候,会造成缓慢的现象,下面我们就针对这个问题做一下 ...

  8. FragmentPagerAdapter加载fragment并使用setUserVisibleHint()处理预加载时遇到的坑,给textview赋值时出现的空指针异常

    FragmentPagerAdapter加载fragment并使用setUserVisibleHint()处理预加载时,给textview赋值时出现的空指针异常 public class BaseFr ...

  9. ViewPager+Fragment取消预加载(延迟加载)(转)

    原文:http://www.2cto.com/kf/201501/368954.html 在项目中,都或多或少地使用的Tab布局,所以大都会用到ViewPager+Fragment,但是Fragmen ...

随机推荐

  1. centos7 配置虚拟交换机(物理交换机truckport设置)(使用brctl)

    感谢朋友支持本博客.欢迎共同探讨交流,因为能力和时间有限.错误之处在所难免,欢迎指正! 假设转载,请保留作者信息. 博客地址:http://blog.csdn.net/qq_21398167 原博文地 ...

  2. Android Studio keymap到Eclipse后,查找下一个同样变量快捷键Ctrl+K失效

    注:升级到0.8的版本号以后.这个快捷键能够使了,只是另一个bug,假设你用了Ctrl+F先去查找了其它的东东,再使这个快捷键去定位另外一个变量可能偶尔会不灵,不灵的话还是能够用我以下的方式来让Ctr ...

  3. 2016/2/24 css画三角形 border的上右下左的调整 以及内区域的无限变小 边界透明

    网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果.特别是随着 CSS3 的广泛使用,更多新奇的 CSS 作品涌现出来. 今天 ...

  4. Hessian Matrix 多元函数的极值 半正定矩阵 正定矩阵

    https://baike.baidu.com/item/黑塞矩阵/2248782?fr=aladdin 海塞矩阵 Hasse https://baike.baidu.com/item/半正定矩阵

  5. YTU 2918: Shape系列-5

    2919: Shape系列-5 时间限制: 1 Sec  内存限制: 128 MB 提交: 251  解决: 199 题目描述 JC和Kitty听说小亮和小华有了Rectangle和Circle并用R ...

  6. MVC视图中下拉框的使用

    一.一般变量或对象的绑定 首先要在controller 中将选项设置成 selecList对象,并赋值给viewBag动态对象. public ActionResult Index(string mo ...

  7. hdu4815 概率问题

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4815 好久没写dp了..最开始题意都理解错了, 哎!!我现在很饿也很困!! AC代码: #includ ...

  8. Ubuntu adb devices :???????????? no permissions 解决方法[转]

    转自: http://www.cnblogs.com/cat-lee/archive/2011/07/09/2101718.html untun下USB连接Android手机后,使用adb devic ...

  9. P1971 [NOI2011]兔兔与蛋蛋游戏

    传送门 思路比较迷--题解在这里 //minamoto #include<bits/stdc++.h> #define R register #define fp(i,a,b) for(R ...

  10. quickpow || 快速幂

    洛谷例题 推荐自行脑补:百度百科 如果  ,那么 : 前言:快速幂就是快速算底数的n次幂.其时间复杂度为 O(log₂N), 与朴素的O(N)相比效率有了极大的提高. 拿题目样例 Input :2 1 ...