毕加索从文件系统加载图像
我可以使用Picasso库从文件系统加载图像吗?
我使用startActivityForResult
让用户从他的画廊中select一张照片,然后想要显示选定的图像。
我已经有工作代码来获取图像文件系统Uri
,但无法使Picasso.load()
方法工作。
当然可以。 其实非常简单:
File f = new File("path-to-file/file.png")
要么
File f = new File(uri) Picasso.with(getActivity()).load(f).into(imageView);
也
Picasso.with(getActivity()).load(uri).into(imageView);
作品
是的你可以。
尝试:
Picasso.with(context).load(new File(YOUR_FILE_PATH)).into(imageView);
编辑
您也可以调用.load(YOUR_URI)
。
查看源代码,我还发现,您可以从文件系统加载file:
string前缀到您的图像path加载图像。 例如:
file:path/to/your/image
另外,当使用startActivityForResult时,你会得到像这样的东西:
Uri imageContent = data.getData();
然后,你可以调用Picasso.with(getContext()).load(imageContent.toString).into(imageView);
直接不需要创build一个Cursor
和查询图像path。
尝试这个:
Picasso.with(context) .load("file://"+path) // Add this .config(Bitmap.Config.RGB_565) .fit().centerCrop() .into(imageView);
这对我来说是完美的。
基本上我们需要三件事情, Context
, image´s path
和ImageView
容器
Picasso.with(context).load("/files/my_image.jpg").into(myImageView);
但我们可以利用更多的select:
.resize(20, 20) .centerCrop() .placeholder(R.drawable.user_placeholder) .error(R.drawable.user_placeholder_error)
等等…
更多信息: http : //square.github.io/picasso/