如何在滑动时显示本地视频缩略图而不会减慢列表视图的速度?

时间:2016-11-23 08:31:11

标签: android thumbnails android-glide

我试图以这种方式显示本地视频缩略图,它确实在列表中显示缩略图。然而,列表变得非常难以滚动。 有没有更好的方法来解决这个问题? 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;

3 个答案:

答案 0 :(得分:3)

我发现以下答案也有效:

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

答案 1 :(得分:0)

是的,请改用RecyclerView。它不存储所有图片,只是那些适合屏幕的图片,很少隐藏用于缓存

答案 2 :(得分:-1)

最后,我找到了解决此案例的方法。 Glide有一种叫做缩略图(float sizeMultiplier)的方法,它只是压缩原始图像的大小。滚动时我的listView更加流畅。

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