Can I use Picasso library to load images from the filesystem?
I'm using startActivityForResult
to let the user pick a photo from his gallery, and then want to show the selected image.
I already have working code to get the image filesystem Uri
, but can't get the Picasso.load()
method to work.
Of course you can. Its actually pretty straight forward:
File f = new File("path-to-file/file.png")
or
File f = new File(uri)
Picasso.with(getActivity()).load(f).into(imageView);
also
Picasso.with(getActivity()).load(uri).into(imageView);
works
Yes you can.
Try:
Picasso.with(context).load(new File(YOUR_FILE_PATH)).into(imageView);
EDIT
You can also call .load(YOUR_URI)
instead as well.
Looking in the source code I also discover that you can load the image from filesystem adding file:
string prefix to your image path. For example:
file:path/to/your/image
Also, when using startActivityForResult, you will get something like this:
Uri imageContent = data.getData();
Then, you can call Picasso.with(getContext()).load(imageContent.toString).into(imageView);
directly without need to create a Cursor
and querying for the image path.
Try this:
Picasso.with(context)
.load("file://"+path) // Add this
.config(Bitmap.Config.RGB_565)
.fit().centerCrop()
.into(imageView);
It work perfect for me.
> Picasso.get().load(R.drawable.landing_screen).into(imageView1);
> Picasso.get().load("file:///android_asset/DvpvklR.png").into(imageView2);
> Picasso.get().load(new File(...)).into(imageView3);
Basically we need three things, Context
, image´s path
and the ImageView
Container
Picasso.with(context).load("/files/my_image.jpg").into(myImageView);
but we can make use of more options:
.resize(20, 20)
.centerCrop()
.placeholder(R.drawable.user_placeholder)
.error(R.drawable.user_placeholder_error)
etc...
more info : http://square.github.io/picasso/
来源:https://stackoverflow.com/questions/23681177/picasso-load-image-from-filesystem