2

我有一个扩展 ArrayAdapter 的自定义适配器,它包括列表中每个项目的复选框。

在 getview 本身中,我有 onCheckedChanged 侦听器,如果选中,它会从数据库中删除一个项目。但是列表视图没有更新,我不能调用 notifyDataSetChanged() 因为我不在主类中。有什么想法吗?

4

2 回答 2

1

调用invalidate()您的 ListView。这使得列表被刷新并再次显示。也许它会解决你的问题。

我不明白你为什么不能打电话notifyDataSetChanged()

于 2013-03-06T18:12:37.920 回答
1

发布代码,以便读者了解您的问题。

您不必在扩展 ArrayAdapter 的类中设置任何侦听器。在这个类中,我们只将数据膨胀到视图中。

删除onCheckedChanagedListenerfromAdapter类并将其放在使用此适配器的ListActivityor中。Fragment

于 2013-03-06T17:59:39.470 回答