如何使用Picasso库从SD卡加载图像

时间:2014-06-07 13:11:48

标签: android picasso image-loading

我需要将Sd卡中的图像加载到gridview中。 为了提高效率,请使用 Picasso

Picasso.with(activity).load(images.get(position).getDataPath())
            .resize(96, 96).centerCrop().into(viewHolder.image);

我在适配器中使用了以下代码。不幸的是我无法看到任何图像 所以请任何人帮忙。

注意 并且任何人都可以建议任何有效的图像加载库来加载SD卡中的图像。

要求 每次滚动时我都不会加载图像。如果已加载,请不要在滚动时加载图像

3 个答案:

答案 0 :(得分:46)

要加载文件,您需要先将其转换为uri

Uri uri = Uri.fromFile(new File(images.get(position).getDataPath()));

Picasso.with(activity).load(uri)
            .resize(96, 96).centerCrop().into(viewHolder.image);
  

要求每次滚动时都不要加载图像。如果它   已加载不加载滚动图像

  • 毕加索非常适合这个

答案 1 :(得分:6)

在Picasso 2.5.2版中,您需要将File作为参数传递给load方法,因此可以将图像加载为:

Picasso.with(context).load(new File(images.get(position).getDataPath()))
    .resize(96, 96).centerCrop().into(viewHolder.image);

答案 2 :(得分:3)

我不想创建new File,因为如果路径已经从现有文件中获取,则不需要新对象(想要查看设备中已存在的图片)

根据毕加索的文档,你必须做这样的事情: file:///android_asset/DvpvklR.png

所以我以前有: /storage/sdcard/Pictures/findyoursport/yoursport_1482358052384.jpeg

前置:file://完成了这个伎俩