notifyDataSetChanged无效[通俗易懂]

notifyDataSetChanged无效[通俗易懂]一、前言相信很多人都曾经被这个问题困扰,当然我也是这样过来的,原来以为只要数据变了,调用adapter的notifyDataSetChanged就会更新列表,然而结果却没有实现,其实是在一些细节上没有注意造成的,所以现在对这个问题进行下总结希望可以帮助到有需要的人。二、原因分析有以下三个原因:1、数据源没有更新,调用notifyDataSetChanged无效。2、数据源更新了,但是它指向新的引用,

大家好,又见面了,我是你们的朋友全栈君。

一、前言

相信很多人都曾经被这个问题困扰,当然我也是这样过来的,原来以为只要数据变了,调用adapter的notifyDataSetChanged就会更新列表,然而结果却没有实现,其实是在一些细节上没有注意造成的,所以现在对这个问题进行下总结希望可以帮助到有需要的人。

二、原因分析

有以下三个原因:

1、数据源没有更新,调用notifyDataSetChanged无效。

2、数据源更新了,但是它指向新的引用,调用notifyDataSetChanged无效。

3、数据源更新了,但是adapter没有收到消息通知,无法动态更新列表。

一般来说,我们都是第二个原因造成的。

我解决

我再次实例化adapter,再调用notifyDataSetChanged,就ok了!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148680.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月28日 下午9:36
下一篇 2022年6月28日 下午9:46


相关推荐

  • 安装ADOBE reader时出现找不到actionlist的解决办法

    安装ADOBE reader时出现找不到actionlist的解决办法这个错误的原因是机器上有未卸载干净的 flashplayer 首先下载一个 AdobeFlashPl 8 800 129 地址为 http lt newhua com down flashplayer1 8 uninstall win zip 解压之后运行安装 然后从下面这个地址下载并安装 adobereader 即可 http aihd

    2026年3月26日
    2
  • Python知识点(史上最全)

    Python知识点(史上最全)Python期末考试知识点(史上最全)python简介Python是一种解释型语言Python使用缩进对齐组织代码执行,所以没有缩进的代码,都会在载入时自动执行数据类型:整形int无限大浮点型float小数复数complex由实数和虚数组成Python中有6个标准的数据类型:

    2022年5月14日
    47
  • python win32api win32gui win32con 窗口句柄 发送消息 常用方法 键盘输入

    python win32api win32gui win32con 窗口句柄 发送消息 常用方法 键盘输入推荐微软的 Spy 来查看窗口类名等信息 importwin32g 从顶层窗口向下搜索主窗口 无法搜索子窗口 FindWindow lpClassName None lpWindowName None 窗口类名窗口标题名 handle win32gui FindWindow Notepad N

    2026年3月18日
    3
  • SQL语句多表连接查询语法

    SQL语句多表连接查询语法总结:内连接就是两个表的交集,左外连接就是左边表加两表交集,右外连接就是右边表加两表交集一、外连接1.左连接leftjoin或leftouterjoinSQL语句:select*fromstudentleftjoinscoreonstudent.Num=score.Stu_id;2.右连接rightjoin或r…

    2022年5月3日
    755
  • Claude Code for JetBrains IDE 使用教程

    Claude Code for JetBrains IDE 使用教程

    2026年3月15日
    2
  • substring方法截取字符串以及其他方式

    substring方法截取字符串以及其他方式方法一,指定字符,截取字符串,返回字符串数组:Stringstr=“abcd,123,123abc,fij23”;String[]strs=str.split(“,”);方法二,指定索引号,截取字符串:将字符串从索引号为5开始截取,一直到字符串末尾。(索引值从0开始):Stringstr=“asdfghjkl”;str.substring(5);从索引号2开始到索引好4结束(并且不包含索引4截取在内,也就是说实际截取的是2和3号字符):Stringsb=“asdfghj

    2022年5月23日
    164

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号