Android notifyDataSetChanged

14

我有一个包含自定义ArrayAdapter的列表。

我想每秒更新一次进度条,因此我尝试使用notifyDataSetChanged()来重新绘制列表,但似乎不起作用。

3个回答

14

你是如何更新提供数据给 ArrayAdapterList 数据结构的呢?

请参考我在这里的回答:notifyDataSetChanged example

该回答解决了关于 ArrayAdapters 和更新保存数据的 List 以使得 notifyDataSetChanged 起作用的问题。


2
如果您不是从主线程调用此函数,请尝试让主线程调用此函数。通常,当notifyDataSetChanged未更新实际屏幕内容时,这就是问题所在。

我相信这样做是可行的,每当我需要从线程更新我的图形界面时,我会向在主视图中创建的处理程序发送一条消息。 - snctln
4
请提供一个从主线程调用它的示例。 以下是如何从主线程调用它的示例: - Sheehan Alam

0

我可能有答案。试试这个:

((BaseAdapter) arrayAdapter).notifyDataSetChanged();

我曾经也遇到过同样的问题,以下是我的解决方案 :)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接