适配器的内容已更改,但ListView未收到通知。

时间:2016-12-09 09:45:08

标签: android

我有自定义BaseAdapter的列表视图,我有来自Web服务的菜单列表并使用线程(在后台)存储在SQLite数据库中,因此主线程不会挂起,性能会提高但是从主设置适配器时线程,应用程序崩溃。通过本文标题中提到的异常。我可以如何解决请帮助。

2 个答案:

答案 0 :(得分:0)

你可以试试Adapter.notifyDataSetChanged();要像这样更新您的当前列表>>>

List<Item> new= databaseHandler.getItems();
Adapter.clear();
Adapter.addAll(new);
Adapter.notifyDataSetChanged();
databaseHandler.close();

答案 1 :(得分:0)

如果您使用AsyncTask进行后台操作,请在“onPostExecuted”方法中执行此操作:

- &GT;重新初始化适配器并将其设置为列表   list.setAdapter(适配器);

- &gt;并设置此项。   adapter.notifyDataSetChanged();