文档章节

listView adapter 的java.lang.IllegalStateException

Jonson
 Jonson
发布于 2016/05/16 17:56
字数 179
阅读 35
收藏 0

java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. Make sure your adapter calls notifyDataSetChanged() when its content changes. [in ListView(16908298, class qiso.czc.customview.czc_version10.PullToRefreshListView$InternalListViewSDK9) with Adapter(class android.widget.HeaderViewListAdapter)]

因为我在getCount里面定义了 goodeses.clear 搞到listView一下子访问的getCount出现了数目不一致出错.  百度上查了也说Adapter数据更新后,没有及时使用notifyDataSetChanged()方法通知UI,导致出现数据不一致而报错

 


    @Override
    public int getCount() {
        if(dataList == null || dataList.isEmpty()) {
            goodses.clear();
            return 0;
        }



        for (CollectionGoods collectionGoods : dataList){
            if(collectionGoods.goods!=null)
            goodses.add(collectionGoods.goods);
        }


        return goodses.size();
    }

 

换成 以下这样就没问题了

 if(dataList == null || dataList.isEmpty()) {
           
            return 0;
        }


        goodses.clear();
        for (CollectionGoods collectionGoods : dataList){
            if(collectionGoods.goods!=null)
            goodses.add(collectionGoods.goods);
        }


        return goodses.size();

 

 

© 著作权归作者所有

共有 人打赏支持
Jonson
粉丝 21
博文 131
码字总数 17942
作品 0
肇庆
私信 提问
解决listview出现线程更新错误问题

java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a......

MrLovelyCbb
2011/12/09
0
1
《每日一剂》适配器刷新报错adapter.notifyDataSetChanged()解决

在使用ListView过程中,有时会出现The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a ......

王先森oO
05/29
0
0
ListView setAdapter has already been called 异常

本文参考:http://blog.csdn.net/androiddevelop/article/details/8474939 异常提示:Java.lang.IllegalStateException: Cannot add header view to list -- setAdapter has already been ca......

qq_32059827
2017/07/12
0
0
自己做项目中遇到的一些常见问题及解决方法

1) 数据来自于服务器和数据库, 可能出现FC问题 日志: java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sur......

胡文城
2014/05/10
0
0
listview点击后退出程序,请问该如何解决!

05-16 15:36:53.518 3510-3510/org.opensource.code.today E/AndroidRuntime: FATAL EXCEPTION: main java.lang.IllegalStateException: The content of the adapter has changed but ListVi......

极客开源灬紫易风语
2016/05/16
111
0

没有更多内容

加载失败,请刷新页面

加载更多

浅谈Redux中间件的实践

最近项目前端开发框架采用React+Redux进行实现,但是,如何异步访问服务器端,以及想要在开发过程中进行状态树日志的输出,所以怎么才能解决这两个问题? 采用Redux中间件 为什么要使用中间件...

peakedness丶
7分钟前
0
0
大数据教程(8.1)mapreduce核心思想

上一章介绍了hadoop的HDFS文件系统的原理及API使用。本章博主将继续对hadoop的mapreduce编程框架进行分享。 mapreduce原理篇 mapreduce是一个分布式运算程序的编程框架,是用户开发“基于had...

em_aaron
13分钟前
0
0
Vue与Node.js通过socket.io通信的示例

#一、Node中socket.io基础 1、是什么 Socket.IO类库,是在服务器和浏览器之间提供一个共享接口,其可以用于实现以下几种通信方式: HTML5中的WebSocket通信 Flash中使用的WebSocket通信 XHR轮...

前端攻城老湿
19分钟前
1
0
JavaScript的组成 | DOM/BOM

往期回顾 在上一期的《JavaScript的组成 | 核心-ECMAScript 》☜里,我们有说到JavaScript 是由三大部分组成,分别是:核心ECMAScript、文档对象模型-DOM、浏览器对象模型-BOM 那么本期就让我...

我的卡
22分钟前
0
0
三, 跨语言微服务框架 - Istio官方示例(自动注入.请求路由.流量控制.故障注入)

基础的Istio环境已经搭建完成,我们需要开始了解Istio提供作为微服务网格的各种机制,也就是本文标题的自动注入.请求路由.故障注入.流量切换,官方很给力的准备的实例项目也不需要大家自己编写d...

喵了_个咪
25分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部