Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >解决RecyclerView点击一个item,后面每间隔9个item就会触发一次同样的事件的问题

解决RecyclerView点击一个item,后面每间隔9个item就会触发一次同样的事件的问题

原创
作者头像
用户10521372
发布于 2023-05-22 07:52:53
发布于 2023-05-22 07:52:53
4980
举报
文章被收录于专栏:android自用android自用

当你通过点击事件改变第一个item的状态之后,向下滑动到第10个item也会同样触发,然后第19、28、37、46等等,每间隔9个item就会重复之前的操作后的显示状态。

网上尝试了不同的的方法,什么接口回调之类的,都不太成功(可能是我写法有问题),但是找到了这个方法是绝对可行。

终于在一位兄弟的文档中找到了这么一句代码

代码语言:java
AI代码解释
复制
recyclerview.setItemViewCacheSize(int)

其实就是一个缓存的问题,只要在recyclerview相应的activity或者fragment中设置

int是缓存数,默认值为5,每间隔(4+5)个item就会进行复用,如果你把它设为10,那么每间隔(4+10)个item就会复用,你只要把int的值设为:【item数 - 4】即可!

代码语言:java
AI代码解释
复制
BaseAdapter adapter = new BaseAdapter();
//适配器的总行数 - 4
recyclerview.setItemViewCacheSize(adapter.getCount - 4);

以此记录下,传递给更多的人

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
sed & awk 第二版学习(四)—— 基本 sed 命令
第一个命令可以和左大括号放置在同一行,但是右大括号必须自己单独处于一行。每个命令都可以有自己的地址并允许有多层分组。而且就像命令在大括号内的缩进方式一样,允许在行的开始处插入空格或制表符。要确保在大括号后没有空格。
用户1148526
2024/09/10
1580
sed & awk 第二版学习(五)—— 高级 sed 命令
高级命令改变执行或控制的流程顺序。sed 脚本中正常的控制流为:一行被读入模式空间并用脚本中的每个命令逐个应用于那一行;当到达脚本底部时,输出这一行并且清空模式空间;然后新行被读入模式空间,并且控制被转移回脚本顶端。
用户1148526
2024/09/20
1820
sed & awk 第二版学习(一)—— sed 与 awk 基本操作
有 3 种方式可以在 sed 命令行上指定多个指令: 1. 用分号分隔指令。
用户1148526
2024/08/21
1670
sed入门详解教程 原
    sed 是一个比较古老的,功能十分强大的用于文本处理的流编辑器,加上正则表达式的支持,可以进行大量的复杂的文本编辑操作。sed 本身是一个非常复杂的工具,有专门的书籍讲解 sed 的具体用法,但是个人觉得没有必要去学习它的每个细节,那样没有特别大的实际意义。网上也有很多关于 sed 的教程,我也是抱着学习的心态来学习 sed 的常见的用法,并进行系统的总结,内容基本覆盖了 sed 的大部分的知识点。文中的内容比较简练,加以实际示例来帮助去理解 sed 的使用。
拓荒者
2019/03/11
1.5K0
sed入门详解教程
                                                                            原
干货!上古神器 sed 教程详解,小白也能看的懂
熟悉 Linux 的同学一定知道大名鼎鼎的 Linux 三剑客,它们是 grep、awk、sed,我们今天要聊的主角就是 sed。
用户3105362
2021/02/04
2.6K0
干货!上古神器 sed 教程详解,小白也能看的懂
文本处理三剑客之sed
sed 全名为 stream editor,流编辑器,用程序的方式来编辑文本。sed 与vim等编辑器不同,sed 是一种非交互式编辑器(即用户不必参与编辑过程),它使用预先设定好的编辑指令对输入的文本进行编辑,完成之后再输出编辑结构。
用户4877748
2020/07/21
9670
《Linux命令行与shell脚本编程大全》第二十一章 sed进阶
本章介绍一些sed编辑器提供的高级特性。 21.1 多行命令 按照之前的知识,所有的sed编辑器命令都是针对单行数据执行操作的。 在sed编辑器读取数据流时,它会基于换行符的位置将数据分成行,一次处理一行数据。 有时会需要对跨多行的数据执行特定操作。 比如,在数据中查找一个长的短语Linux system Administrators Group.如果这个短语出现在两行当中,之前的知识就不够用了。 解决方案,sed编辑器包含了三个可用来处理多行文本的特殊命令: N:将数据流中的下一行加进来创建一个多行组(m
xcywt
2018/01/11
1.7K0
《Linux命令行与shell脚本编程大全》第二十一章 sed进阶
shell脚本–sed的用法[通俗易懂]
sed在处理文本时是逐行读取文件内容,读到匹配的行就根据指令做操作,不匹配就跳过。
全栈程序员站长
2022/09/19
4K0
shell脚本–sed的用法[通俗易懂]
命令行上的数据科学第二版 五、清理数据
两章前,在 OSEMN 数据科学模型的第一步,我们看到了从各种来源获取数据。这一章讲的都是第二步:清理数据。你看,你很少能立即继续探索甚至建模数据。您的数据首先需要清理或清理的原因有很多。
ApacheCN_飞龙
2023/03/31
2.8K0
sed的用法详解
概述:sed是流式编辑器,非交互式的基于模式匹配过滤及修改文本,可实现对文本的输出删除复制替换剪切等各种操作
xibianyu0202
2019/07/24
4.3K0
sed的用法详解
Sed三剑客入门与进阶
描述:功能强大的流式文本编辑器(流编辑器-Stream editor)进行文本过滤与格式化替换输出,是在进行文本处理中非常实用的工具,能够完美的配合正则表达式使用;
全栈工程师修炼指南
2022/09/28
3.2K0
Sed三剑客入门与进阶
Shell笔记5:sed用法详解
概述:sed是流式编辑器,非交互式的基于模式匹配过滤及修改文本,可实现对文本的输出删除复制替换剪切等各种操作
陪你听风
2021/03/31
1.4K0
shell脚本编写手册(2021重编)
{ #!/bin/sh # 在脚本第一行脚本头 # sh为当前系统默认shell,可指定为bash等shell shopt # 显示和设置shell中的行为选项 sh -x # 执行过程 sh -n # 检查语法 set -
IT运维技术圈
2022/06/26
3.4K0
Linux三剑客命令之Sed
sed是一种流编辑器,也是文本处理中非常好的工具,配合正则使用更强大处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”,接着用sed命令处理缓冲区的内容,完成后输出到屏幕,接着处理下一行
民工哥
2020/09/16
1.5K0
实例详解linux文本三剑客--sed
sed 简介 sed是一种流编辑器,以行为单位进行文本处理,可以将数据行进行替换、删除、新增、选取等操作。 sed [options] 'command' file(s) 基本命令 匹配内容 $ sed 'p' /etc/passwd # 每一行输出两次 $ sed -n 'p' /etc/passwd # 每行只出现一次 $ sed -n '/root/p' /etc/passwd root:x:0:0:root:/root:/bin/zsh # 等同于 $ grep 'root' /etc/pas
章鱼喵
2018/06/27
9580
【Linux篇】--sed的用法
Sed是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。
LhWorld哥陪你聊算法
2018/09/13
1.6K0
精简运维流程:grep、awk、sed三剑客的实用脚本
以下这些操作不用刻意去背或记,只要多加练习,自然而然就会用。我这里只挑常用的参数,更详细的参数,大家可以自行搜索查阅。
希里安
2024/01/22
3360
精简运维流程:grep、awk、sed三剑客的实用脚本
Linux:sed命令详解
1. 简介 sed 是非交互式的编辑器。它不会修改文件,除非使用 shell 重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上。 sed 编辑器逐行处理文件(或输入),并将结果发送到屏幕。具
张戈
2018/03/23
7.3K0
Linux:sed命令详解
Linux三剑客(grep、sed、awk)
下面所说的是Linux中最重要的三个命令在业界被称为“三剑客”,它们是awk,sed,grep。
全栈程序员站长
2022/07/21
2.8K0
Linux三剑客(grep、sed、awk)
Shell三大利器之sed
sed (stream editor)流编辑器也是linux中的一条命令,在shell中经常需要用到的非交互式修改文件内容的命令。sed处理文本是按行处理,也就是读一行处理一行。 sed的常用参数 -n 屏蔽默认输出;如果不加-n选项会全部输出文本满足条件的行再重复输出 -r 如果使用扩展正则,则需要添加-r选项,默认不支持扩展正则,只支持标准正则 -i 直接修改源文件;不加-i只会在屏幕临时输出不会修改源文件,一般测试过命令无误才会在脚本中使用-i选项 sed常用命令 a 在当前行后添加一行或多行。多行时
入门笔记
2021/01/18
2.2K0
相关推荐
sed & awk 第二版学习(四)—— 基本 sed 命令
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档