简介 目录 评价 推荐
  • 海怪 2020-02-26

    设置RecyclerView 的间隔代码示例

    RecyclerView.addItemDecoration(new RecyclerView.ItemDecoration(){

    @override

    public void getItemOffsets(Rect outRect,View view , RecyclerView parent, RecyclerView.State state){

      GridLayoutManager.LayoutParams lp = (GridLayoutManager.LayoutParams) view.getLayoutParams();

      int spanSize = lp.getSpanSize();

      int spanIndex = lp.getSpanIndex();

      outRect.top = 20;

      if(spanSize != gridLayoutManager.getSpanCount()){

        if(spanIndex ==1){ outRect.left = 10;}else{ outRect.right=10;}

      }

    }

    });

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    GridLayoutManager.SpanSizeLookup的getSpanSize(int position)方法根据position 配个 RecyclerView的Adapter的getItemViewType(position)方法得到对应position的View类型,进而决定返回该View所应占用的SpanSize的大小:

    public int getSpanSize(int position){

      int type = mRecyclerView.getAdapter().getItemViewType(position);

      if(type ==DataModel.TYPE_THREE){ return gridLayoutManager.getSpanCount();}

      else { return 1;}

    }

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    GridLayoutManager中的setSpanSizeLookup(GridLayoutManager.SpanSizeLookup)方法可以根据position返回每个Item占用几个Span;GridLayoutManager.SpanSizeLookup.getSpanSize(int position)

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    GridLayoutManager示例实现Grid与List混排

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    调试布局的时候,在开发者选项中可以打开显示布局边界

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    多种ViewHolder创建使用示例

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    配合三种Item布局,创建三种ViewHolder

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    技能点:TextView中用tools:text="",指定的text属性值,在布局预览中可以看到,但是在程序运行时是看不到的,达到预览的效果

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    创建三种类型的ItemView布局

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    RecyclerView 的Adapter中的getItemViewType(int position)代码示例

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    重点:

    分配好getItemViewType(int position)中的Type;

    type只需要时一个数字即可,不一定是连续的,但必须是唯一的

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    与ListView的区别

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    RecyclerView.Recycler:

    多个RecyclerView共用一个RecycleredPool,

    RecycleredPool为RecyclerView的静态成员变量

    配置缓存Size

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    RecyclerView.Recycler:

    RecyclerView通过内部类Recycler中的Map缓存了Holder

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    RecyclerView.Holder 在RecycleView中保存View,包装了View;

    与ListView不同,ListView的cache中保存的是View,而RecyclerView的cache中保存的Holder,在Holder中包装了一个View;

    Holder中保存着Type,Position,是否需要被缓存的Flag标志等信息

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    getItemType:

    遍历缓存中的Holder,如果Type与所需要的一致就返回Holder

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    getItemType的作用

    ItemType 保存在Holder中,holder根据position被缓存在cache中

    截图
    0赞 · 0采集
  • 海怪 2020-02-26

    RecyclerView支持多样Item布局的原理

    截图
    0赞 · 0采集
  • 慕斯卡7516740 2019-09-04
    必看
    截图
    0赞 · 0采集
  • 慕粉1954403104 2019-06-13
    阿拉分了
    截图
    0赞 · 0采集
  • qq_面朝大海_29 2019-01-20

    笔记见截图

    截图
    0赞 · 0采集
  • 慕神4241512 2019-01-02
    学习第一步
    截图
    0赞 · 0采集
  • CHINA7 2018-09-25

    第一步:复写getitemviewType(int position)方法

    根据各个position的位置返回不同的类别

    第二部:处理get itemcount()

    第三步:按照类型处理onCreateVIewHolder和onbindviewHolder

    这两个方法就是原来listview当中adapter中需要复写的getview

    0赞 · 0采集
  • _03818395 2018-08-23
    recyclerView = (RecyclerView) findViewById(R.id.my_rv);
            GridLayoutManager manager = new GridLayoutManager(this, 6);
            manager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {            @Override
                public int getSpanSize(int position) {                if (position < 7 || position > 14) {                    return 3;
                    }                return 2;
                }
            });
            recyclerView.setLayoutManager(manager);
            adapter = new MyAdapter(this);
            recyclerView.setAdapter(adapter);作者:Android_小生链接:https://www.jianshu.com/p/29465cce1131來源:简书简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。


    0赞 · 0采集
  • _03818395 2018-08-23

    对应博客

    https://blog.csdn.net/qq_31568297/article/details/53468648

    0赞 · 0采集
  • 想成为技术大牛的程序猿 2018-05-30

    学习技巧:

    1. 学会看官方文档

    2. 多看源码

    3. 多写,多实践

    4. 优化自己的代码

    0赞 · 0采集
  • 把酒定乾坤 2018-05-21

    设置适配器

    截图
    0赞 · 0采集
  • iamnxh2 2018-04-04

    都有同样的方法,做个抽象类出来

    0赞 · 0采集
  • 骑猪看夕阳 2018-02-20
    通讯录的样式
    截图
    0赞 · 0采集
  • 骑猪看夕阳 2018-02-20
    recyclerview的实现样式
    截图
    0赞 · 0采集
数据加载中...
开始学习 免费