0

我有一个ListView,每行有 4 张照片,还有一个照片下载管理器处理所有这些照片的下载。我限制了下载照片的线程数,因为我在到达 ListView 时创建了太多线程(它曾经是:每行 4 张照片 * 显示 5 或 6 行 => 20/25 线程,并且 + if你滚动)

所以问题是 UI 线程很忙,当我在加载照片时单击我的项目时,有时会跳过OnItemClickEvent,用户必须疯狂地等待点击下载结束。

有没有办法避免这样的跳过事件?

更新: 每次下载照片时我都会发送广播,并在我的ListView适配器上发送notifyDataSetChanged 。

4

1 回答 1

3

创建一个20/25 线程来下载图像是个坏主意

我认为您必须AsyncTask用于下载这些图像,以便您的 UIThread 永远不会阻塞,

您也可以使用Fedor LazyList的延迟加载列表。

在 Android 上查看Lazy-Loading Images into a ListView

SO Question Android - 如何在 ListView 中延迟加载图像

无痛穿线

于 2011-12-21T10:28:47.707 回答