我可以使用Picasso库从文件系统加载图像吗?Picasso从文件系统加载图像
我使用startActivityForResult
来让用户从他的画廊中选择一张照片,然后显示所选图像。
我已经有工作代码来获取图像文件系统Uri
,但无法使Picasso.load()
方法工作。
我可以使用Picasso库从文件系统加载图像吗?Picasso从文件系统加载图像
我使用startActivityForResult
来让用户从他的画廊中选择一张照片,然后显示所选图像。
我已经有工作代码来获取图像文件系统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:
字符串前缀添加到您的图像路径。例如:
file:path/to/your/image
此外,使用startActivityForResult时,你会得到这样的事情:
Uri imageContent = data.getData();
然后,您可以直接拨打Picasso.with(getContext()).load(imageContent.toString).into(imageView);
,而无需创建一个Cursor
和查询图像路径。
基本上,我们需要三样东西,Context
,image´s path
和ImageView
集装箱
Picasso.with(context).load("/files/my_image.jpg").into(myImageView);
,但我们可以利用更多的选择:
.resize(20, 20)
.centerCrop()
.placeholder(R.drawable.user_placeholder)
.error(R.drawable.user_placeholder_error)
等等
我不知道这是否是毕加索要求从文件系统(以字符串格式)加载图像的“特定”URI格式。但是我使用了从ActivityResult返回的那个,直到我传递一个File对象,而不是直接传递给String,它才工作。 – Gonan
我想这样做,但这是行不通的,我从另一个活动文件到我的应用程序缓存,但毕加索不加载它... – Loenix