Android Fragment预加载与懒加载问题

Fragment预加载:当ViewPager+Fragment实现滑动页面时,当进入第一个页面时,第二个页面的内容(即页面需要填充的内容或逻辑)就会被提前加载出来,这会严重影响性能。

Fragment懒加载:为解决Fragment预加载导致性能降低出现的方法。

Fragment懒加载包括两种方式:

1、禁止Fragment预加载,重写ViewPager,但是这种方式会导致滑动卡顿,影响用户体验。

2、采用Fragment懒加载,在每个继承Fragment的类中,重写setUserVisibleHint()方法,可以在页面可见时,加载内容。

例如:

public class TestFragment extends Fragment{  
    @Override  
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {  
        View view = inflater.inflate(R.layout.fragment_tab, container, false);  
        return view;  
      }
    @Override  
    public void setUserVisibleHint(boolean isVisibleToUser) {
        super.setUserVisibleHint(isVisibleToUser); 
       if (getUserVisibleHint()) {
            //可见时进行内容加载或逻辑操作等
        } else {
            //不可见
        } 
   }
}

感谢于阗提供的帮助(详细Fragment懒加载分析,可参考http://www.jianshu.com/p/104be7cd72b6)


猜你喜欢

转载自blog.csdn.net/Android_Programmer/article/details/76153420
今日推荐