0

java.lang.IllegalStateException:适配器的内容已更改,但 ListView 没有收到通知。确保适配器的内容不是从后台线程修改的,而只是从 UI 线程修改的。

注意:这个问题已经被问过了,我想得到一个有效的答案

我的列表视图包含大量数据

当列表中的数据发生更改时,我正在使用处理程序调用波纹管代码

 listviewAdapter.notifyDataSetChanged();

但我有时会遇到同样的错误,而不是每次我加载它都提前谢谢

4

2 回答 2

0

因为有 2 个线程(UI 线程,处理程序线程),所以此错误即将删除该处理程序,因为它在后台工作。仅在 UI 线程中编写代码(它是一个主线程)。

于 2012-04-20T12:26:34.237 回答
0

使用下面的代码片段,您想在 thred 中更新 UI

runOnUiThread(new Runnable() {
                        public void run() {

                            //update UI

                       }
                    });
于 2012-04-20T12:19:41.433 回答