Reputation: 263
I saved a few JPEG images into the phones storage and I want to load the using picasso into an ImageView. I'm having trouble with it though, whatever I try I just can't load the image, the ImageView end up being blank.
Here's how I save and retrieve the images:
private void saveImage(Context context, String name, Bitmap bitmap){
name=name+".JPG";
FileOutputStream out;
try {
out = context.openFileOutput(name, Context.MODE_PRIVATE);
bitmap.compress(Bitmap.CompressFormat.JPEG, 80, out);
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
private Bitmap getSavedImage(Context context, String name){
name=name+".JPG";
try{
FileInputStream fis = context.openFileInput(name);
Bitmap bitmap = BitmapFactory.decodeStream(fis);
fis.close();
return bitmap;
}
catch(Exception e){
e.printStackTrace();
}
return null;
}
As you can see the returned image is a bitmap, how can I load it into a imageview using picasso? I know I can load the bitmap into an image like this:
imageView.setImageBitmap(getSavedImage(this,user.username+"_Profile"));
But I have a class which using picasso rounds up the image(users profile photo) so I need to load it with picasso.
Upvotes: 7
Views: 11646
Reputation: 812
With the latest version of Picasso in Kotlin:
Picasso.get()
.load(File(context.filesDir, filename))
.into(imageView)
Upvotes: 1
Reputation: 1127
First of all, obtain the path of the image to be loaded. Then, you can use
Picasso.with(context).load(new File(path)).into(imageView);
to load the image into an ImageView.
Upvotes: 22