如何在不减慢列表视图的情况下滑动显示本地视频缩略图?

问题描述 投票:0回答:3

我尝试以这种方式显示本地视频缩略图,它确实在列表中显示了缩略图。然而,该列表变得非常难以滚动。 有更好的方法来解决问题吗? https://futurestud.io/tutorials/glide-displaying-gifs-and-videos

    VideoItem current = (VideoItem) getItem(position);
    mHolder.mTvName.setText(current.getName());
    mHolder.mTvDuration.setText( Utils.convertDuration(current.getDuration()));
    mHolder.mTvSize.setText(formatFileSize(mContext, current.getSize()));


    Glide.with(mContext)
            .load(Uri.fromFile(new File(current.getPath())))
            .transform(new GlideRoundTransform(mContext, 12))
            .into(mHolder.mIvIcon);

    return convertView;
android thumbnails android-glide
3个回答
8
投票

我发现下面的答案也有效:

Uri uri = Uri.fromFile(new File(media.getPath()));
Glide.with(getContext())
   .load(uri)
   .thumbnail(0.1f)
   .into(viewHolderImage.recordedMedia);

-1
投票

终于我找到了解决这个问题的方法。 Glide有一个方法叫做thumbnail(float sizeMultiplier),它只是压缩原始图像的大小。现在我的listView滚动时更加平滑。

       Glide.with(mContext)
            .load(Uri.fromFile(new File(current.getPath())))
            .transform(new GlideRoundTransform(mContext, 16))
            .thumbnail(0.1f)
            .into(mHolder.mIvIcon);

-2
投票

是的,使用 RecyclerView 代替。它不存储所有图片,只存储那些适合屏幕的图片,并且很少隐藏用于缓存

© www.soinside.com 2019 - 2024. All rights reserved.