美文网首页
09_viewpager+fragment

09_viewpager+fragment

作者: lww文 | 来源:发表于2020-10-21 16:52 被阅读0次

    viewpager 缓存

    setOffscreenPageLimit(1) 默认缓存 3个页面  显示一个缓存2个

    预加载:显示一个缓存2个

    如果一个页面需要  5M内存 3个页面就会有15m

    如果一个页面加载需要.0.5s 个页面就需要1.5s  

    但是我们此时 只是显示一个 页面 所以 会造成浪费

    我们需要懒加载

    懒加载: 先缓存一个空白页面 避免预加载  只有真正显示的时候才加载(只是不记载 网络数据)   

    缓存的机制原理

     viewpager的函数

    关键函数 populate(); 填充  fragment   adapter 适配器模式

    viewpager和 Adapter如何联系的?在  viewpager 的 populate()

     1 mAdapter.startUpdate(this);  

    1:如果item是空 创建一个item'


    ====PagerAdapter 中的关键函数

    public abstract int getCount(); 有多少个页面

    startUpdate(@NonNull ViewGroup container) 开始更新ui

    instantiateItem(@NonNull ViewGroup container, int position) 初始化

    destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) 销毁item

    setPrimaryItem(@NonNull ViewGroup container, int position, @NonNull Object object) 设置当前页面

    finishUpdate() 结束更新

    缓存就是把  fragment 放到 arraylist 

    相关文章

      网友评论

          本文标题:09_viewpager+fragment

          本文链接:https://www.haomeiwen.com/subject/ppqemktx.html