gpt4 book ai didi

android - 提高 ListView 从 SD 加载图片到 ListView 时的效率

转载 作者:行者123 更新时间:2023-11-30 04:53:12 25 4
gpt4 key购买 nike

根据 Romain Guy 的高效适配器示例,我正在为我的 ListView 使用自定义适配器。

在我的适配器的 getView() 方法中,我使用以下代码为 ImageView 分配一个存储在 SD 上的 jpg 图像:

File f=new File(MovieThumbs.get(position));

if(f.length() > 0) {
holder.thumb.setImageBitmap(BitmapFactory.decodeFile(MovieThumbs.get(position)));
}

当使用这种方法快速浏览包含大约 200 个项目的列表时,该应用在尝试处理图像时会遇到严重的卡顿问题。

是否有更有效的解决方案?

最佳答案

与其按需从列表适配器中加载图像,不如从 Activity 的 onCreate 中启动一个线程来加载图像怎么样?当加载每个图像时,您可以触发对 Activity 的回调以在列表中显示图像。回调方法类似于:

void onImageDownloadComplete(int pos, BitMap bm) {
ListView lv = getListView();
View listItem = lv.getChildAt(pos);
ImageView img = (ImageView)listItem.getChildAt(indexOfIcon);
img.setImageBitmap(bm);
}

关于android - 提高 ListView 从 SD 加载图片到 ListView 时的效率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2293488/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com