核心代码:

GridLayoutManager manager = new GridLayoutManager(context, 4);
manager.setSpanSizeLookup()
  class SpanSizeLoop(var imageAdapter: MainListAdapter?,var spanCount: Int) : GridLayoutManager.SpanSizeLookup() {
override fun getSpanSize(position: Int): Int {
Logger.e("getSpanSize........${position}")
return if (imageAdapter?.getItem(position)?.itemTypes == 1) spanCount else 1
}
}
recycler.run {
var llManager = GridLayoutManager(SampleApplicationLike.context,SPAN_COUNT,RecyclerView.VERTICAL,false)
imageAdapter = MainListAdapter(SampleApplicationLike.context,getTestData(),calcImageWidth())
adapter = imageAdapter
// 需要先设置adapter
llManager.spanSizeLookup = SpanSizeLoop(imageAdapter,SPAN_COUNT)
layoutManager = llManager
addItemDecoration(RecyclerViewGridItemDecoration(dividerWidth,Color.WHITE,RecyclerView.VERTICAL))
adapter?.notifyDataSetChanged()
}

RecyclerView item独占一行实现的更多相关文章

  1. CSS DIV 独占一行,清除左右两边的浮动

    clear:both //表示清除左右两边浮动的层,自己独占一行

  2. 前端1-----块级标签(独占一行),排版标签(样式排版),其他标签,form表单(input的多种类型)

    前端1-----块级标签(独占一行),排版标签(样式排版),其他标签,form表单(input的多种类型) 一丶HTML块级标签 排版标签 p 标签: 段落标签,会自动在段落上下加上空白来分开 p标签 ...

  3. RecyclerView item 状态错乱

    adapter中: private List<Integer> checkboxUserIdList = new ArrayList<>(); 在如下这个方法中: public ...

  4. recyclerview item点击事件

    recyclerview早就不陌生了,比起过去传统的listView,样式更多,也较为高效一点,这里整理一下recylerview中item的点击事件. recyclerview和listView不同 ...

  5. Android recyclerview 只显示一行 宽度不适配

    最近学习recyclerview 遇到的问题 1.宽度不适配 正确写法 LayoutInflater.from(context).inflate(R.layout.item_view,parent,f ...

  6. 使用recyclerView item布局match_parent属性失效的问题

    https://blog.csdn.net/overseasandroid/article/details/51840819

  7. RecyclerView, ListView 只显示一行内容 问题解决

    Adapter 中的data有多行,但是RecyclerView只显示一行. 原因出在item的layout xml, 用了自动生成的RelativeLayout, 她的默认高度height属性是ma ...

  8. RecyclerViewLoadMoreDemo【封装上拉加载功能的RecyclerView,搭配SwipeRefreshLayout实现下拉刷新】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 封装含有上拉加载功能的RecyclerView,然后搭配SwipeRefreshLayout实现下拉刷新.上拉加载功能. 在项目中将 ...

  9. Kotlin实战案例:带你实现RecyclerView分页查询功能(仿照主流电商APP,可切换列表和网格效果)

    随着Kotlin的推广,一些国内公司的安卓项目开发,已经从Java完全切成Kotlin了.虽然Kotlin在各类编程语言中的排名比较靠后(据TIOBE发布了 19 年 8 月份的编程语言排行榜,Kot ...

随机推荐

  1. java 枚举和数值的相互转换

    枚举简介 enum 的全称为 enumeration, 是 JDK 1.5  中引入的新特性,存放在 java.lang 包中 在实际编程中,往往存在着这样的“数据集”,它们的数值在程序中是稳定的,而 ...

  2. PAT 甲级 1026 Table Tennis (30 分)(坑点很多,逻辑较复杂,做了1天)

    1026 Table Tennis (30 分)   A table tennis club has N tables available to the public. The tables are ...

  3. postman--接口网站测试

    直接在官网下载安装即可 https://www.getpostman.com/downloads/

  4. vue定时器

    mounted(){ setInterval(this.getasks,1000 * 120); },

  5. harbor清理存储

    harbor仓库中镜像按tag清理,删除tag后需要清理gc才能释放空间 #!/bin/bash set -e HARBOR_URL=127.0.0.1 HARBOR_PASSWD=harbor123 ...

  6. 【VS开发】文件共享内存2

    在32位的Windows系统中,每一个进程都有权访问他自己的4GB(232=4294967296)平面地址空间,没有段,没有选择符,没有near和far指针,没有near和far函数调用,也没有内存模 ...

  7. Jpeglib读取jpg文件

    整理自: http://hi.baidu.com/lewutian/item/e8eed42664ee61122a0f1c89 http://blog.csdn.net/mcgrady_tracy/a ...

  8. Vue(一)环境搭建、创建项目

    1.安装node和npm 因为node已经有npm,所以直接安装node,配置环境变量 官网地址:http://nodejs.cn/download/ 2.查看node是否安装成功,输入名nde -v ...

  9. oracle分区表原理学习

    1.创建普通表 create table normal_shp(id number,day date,city_number number,note varchar2(100)) tablespace ...

  10. LUA的table实现

    数据结构 下面的结构体是lua中所定义的table typedef struct Table { CommonHeader; lu_byte flags; /* 1<<p means ta ...