首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Android ItemDecoration 实现分组索引列表的示例代码

本文介绍了Android ItemDecoration 实现分组索引列表的示例代码,分享给大家。具体如下: 先来看看效果: ? ?...我们要实现的效果主要涉及三个部分: 分组 GroupHeader 分割线 SideBar 前两个部分涉及到一个ItemDecoration类,也是我们接下来的重点,该类是RecyclerView的一个抽象静态内部类...使用ItemDecoration时需要继承该类,根据需求可以重写如下三个方法,其它的方法已经deprecated了: public class GroupHeaderItemDecoration extends...3、onDrawOver() 该方法同样也是用来绘制的,但是它在ItemDecoration的onDraw()方法和ItemView的onDraw()完成后才执行。...这里没必要将整个数据源设置到ItemDecoration里边,所以我们只需要提取排序后数据源的tag保存到列表中,然后设置到ItemDecoration里边,后边的操作就依赖设置的数据源了,根据tag的异同来决定是否绘制

1.8K20

小甜点,RecyclerView 之 ItemDecoration 讲解及高级特性实践

为了提高本篇代码的技术含量,下面我们通过 ItemDecoration 来实现一个时光轴的效果。 通过 ItemDecoration 实现时光轴的效果 编码的开始先做设计,或者说先思考。...需要注意的是 onDraw 方法,ItemDecoration 是在 ItemView 的下方绘制的,也就是 ItemView 可能会覆盖 ItemDecoration 的内容。...但是这里是为了说明 ItemDecoration 中的 onDrawOver 方法,为了说明它确实能让 ItemDecoration 图像绘制在 ItemView 内容之上。...事实上,ItemDecoration 的妙处还有好多好多。 总结 自定义一个 ItemDecoration 通常要根据需要,复写它的 3 个方法。...提醒 由于文章篇幅,ItemDecoration 最让我兴奋的内容我需要另写一篇文章,那就是通过 ItemDecoration 自定义 RecyclerView 中的头部或者是粘性头部。

94620

教你玩转 Android RecyclerView:深入解析 RecyclerView.ItemDecoration类(含实例讲解)

---- 前言 RecyclerView在 Android开发中非常常用,如果能结合ItemDecoration类使用,那么将大大提高RecyclerView的表现效果 本文全面解析了ItemDecoration...具体使用 ItemDecoration类中仅有3个方法,具体如下: public class TestDividerItemDecoration extends RecyclerView.ItemDecoration...把每个ItemView的所有 ItemDecoration 的 getItemOffsets 中设置的值累加起来,(每个ItemView可添加多个ItemDecoration) // 即把每个ItemDecoration...具体实现 步骤1:自定义ItemDecorationItemDecoration.java public class DividerItemDecoration extends RecyclerView.ItemDecoration...具体代码实现 * 步骤1:自定义 ItemDecoration类* public class DividerItemDecoration extends RecyclerView.ItemDecoration

1.7K21

【RecyclerView】 七、RecyclerView.ItemDecoration 条目装饰 ( getItemOffsets 边距设置 )

文章目录 一、RecyclerView.ItemDecoration 方法说明 三、getItemOffsets 设置要点 四、完整代码示例 五、RecyclerView 相关资料 一、RecyclerView.ItemDecoration...方法说明 ---- RecyclerView.ItemDecoration 是抽象类 , 当前使用的 onDraw , onDrawOver , getItemOffsets 3 个方法 , 上一篇博客...【RecyclerView】 五、RecyclerView.ItemDecoration 条目装饰 ( 简介 | onDraw | onDrawOver | getItemOffsets ) 二、RecyclerView.ItemDecoration...源码注释解析 中已经分析了 RecyclerView.ItemDecoration 方法 , 并查看了其源码 , 这 3 个方法都是空方法 , 因此这里实现方法时 , 不必再使用 super 调用父类方法...; public class ItemDecoration extends RecyclerView.ItemDecoration { @Override public void onDraw

5.1K00

RecyclerView定制:通用ItemDecoration及全展开RecyclerView的实现不同场景RecyclerView实现

带分割线的列表式RecyclerView--LinearItemDecoration RecyclerView提供了addItemDecoration接口与ItemDecoration类用来定制分割线样式...,那么,在RecyclerView源码中,是怎么用使用ItemDecoration的呢。...的onDraw,绘制分割线或者其他辅助信息,ItemDecoration 支持上下左右四个方向定制占位分割线等信息,具体要绘制的样式跟位置都完全由开发者确定,所以自由度非常大,其实如果不是太特殊的需求的话...网格式ItemDocration的限制 RecyclerView的每个childView都会通过getItemOffsets来设置自己ItemDecoration,对于网格式的RecyclerView,...作者:看书的小蜗牛 原文链接: RecyclerView定制:通用ItemDecoration及全展开RecyclerView的实现

2.5K40

Android RecyclerView打造悬浮效果的实现代码

实现思路: 利用RecyclerView.ItemDecoration绘制Province(就像绘制分割线一样) 同一组的City,只绘制一个Province 计算偏移,将当前Province固定在顶部...根据列表滑动,实现偏移效果 ItemDecoration 既然是利用RecyclerView.ItemDecoration实现的悬浮效果,那么有必要了解下它。...ItemDecoration字面意思:Item的装饰。是的!是装饰!不只是画分割线。 其实ItemDecoration的功能非常强大,而我们平时只是用它来实现分割线的效果(至少我是这样)。...因此,可能很多同学认为ItemDecoration就是用来绘制分割线的。其实不然,ItemDecoration的功能远不止是分割线的绘制。...先看下RecyclerView.ItemDecoration的源码(部分): public static abstract class ItemDecoration { ...

1.7K50

【Android】RecyclerView:打造悬浮效果

实现思路: 利用RecyclerView.ItemDecoration绘制Province(就像绘制分割线一样) 同一组的City,只绘制一个Province 计算偏移,将当前Province固定在顶部...根据列表滑动,实现偏移效果 ItemDecoration 既然是利用RecyclerView.ItemDecoration实现的悬浮效果,那么有必要了解下它。...ItemDecoration字面意思:Item的装饰。是的!是装饰!不只是画分割线。 其实ItemDecoration的功能非常强大,而我们平时只是用它来实现分割线的效果(至少我是这样)。...因此,可能很多同学认为ItemDecoration就是用来绘制分割线的。其实不然,ItemDecoration的功能远不止是分割线的绘制。...先看下RecyclerView.ItemDecoration的源码(部分): public static abstract class ItemDecoration { ...

2.9K100

ByRecyclerView:真·万能分割线 (线性宫格瀑布流)

前言 我基本上找遍了网上所有通过ItemDecoration设置分隔线的文章,但都不尽如意,它们大多只适用于部分情况,比如只能给线性布局设置、只能设置color不能设置drawable、不能去除HeaderView...GridLayoutManager或StaggeredGridLayoutManager设置 1、可配置只在四周是否显示分割线 2、可设置header或footer不显示分割线的个数 绘制原理: 网上很多解释通过ItemDecoration..., float leftTopPaddingDp, float rightBottomPaddingDp) 一个完整的设置如下: // 设置分割线color SpacesItemDecoration itemDecoration...); // 设置分割线drawable SpacesItemDecoration itemDecoration = new SpacesItemDecoration(recyclerView.getContext...://github.com/youlookwhat/ByRecyclerView */ public class SpacesItemDecoration extends RecyclerView.ItemDecoration

1.4K30

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券