【发布时间】:2023-03-04 13:49:01
【问题描述】:
我有以下问题。我用来自 BD 的数据用自定义 ArrayAdapter 填充 ListView。但是,在后台,我正在从 API 提供的信息中更新这些数据,所以这个想法是当更新完成时,适配器会显示更新后的数据,而不是它的“old version”。 p>
问题是,当我这样做时,我注意到适配器在自我更新时出现了延迟。是否有任何有效的解决方案来避免这种情况?
谢谢
【问题讨论】:
我有以下问题。我用来自 BD 的数据用自定义 ArrayAdapter 填充 ListView。但是,在后台,我正在从 API 提供的信息中更新这些数据,所以这个想法是当更新完成时,适配器会显示更新后的数据,而不是它的“old version”。 p>
问题是,当我这样做时,我注意到适配器在自我更新时出现了延迟。是否有任何有效的解决方案来避免这种情况?
谢谢
【问题讨论】:
您可以在 ListAdapter 上调用 notifyDataSetChanged() 以使其立即更新为当前数据。请注意,您应该从主 UI 线程执行此操作,使用 Handler 或 Activity.runOnUIThread()
【讨论】: