我正在使用 RecyclerView
显示包含 imageView
的列表。为了使UI更加流畅,我使用一个 asyncTask
将存储在SD卡上的58dp缩略图加载到这些imageView中。
问题是,一旦一个 childView
进入视觉显示,就会重用另一个数据的旧图像,然后在 AsyncTask
完成时替换。可以通过在 onPreExecute
中将 imageView
的位图设置为null来停止洗牌。
是否有一种方法真正重用旧图像,还是每次新的 View
进入位置时都必须从sd卡加载图像?这使视图非常丑陋,因为要么首先出现错误的图像,要么图像是纯白色的。
ImageView
,还是要使用setDrawable(null)
? - Jared BurrowssetBitmap(null)
延迟了洗牌,但最终问题仍然存在。 - Emmanuel Mtali