2015-08-02 3 views
4

Я сохранил несколько изображений JPEG в хранилище телефонов, и я хочу загрузить использование пикассо в ImageView. У меня проблемы с этим, хотя, что бы я ни пытался, я просто не могу загрузить изображение, ImageView в конечном итоге становится пустым.Загрузка изображений с помощью Picasso из внутреннего хранилища

Вот как я сохранять и извлекать изображения:

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; 
} 

Как вы можете видеть, возвращенное изображение является растровым, как я могу загрузить его в ImageView с помощью Picasso? Я знаю, что я могу загрузить растровое изображение в изображение, как это:

imageView.setImageBitmap(getSavedImage(this,user.username+"_Profile"));

Но у меня есть класс, который с помощью Picasso округляет изображения (пользователей фото профиля), поэтому мне нужно, чтобы загрузить его с Picasso.

+0

Вы пробовали http://stackoverflow.com/questions/23681177/picasso-load-image-from-filesystem – Gatunox

+0

Или прочитайте документацию ??? – Roisgoen

ответ

16

Прежде всего, получите путь к загружаемому изображению. Затем вы можете использовать

Picasso.with(context).load(new File(path)).into(imageView); 

Загрузить изображение в изображение.

+0

Работает очень хорошо, и это отличное решение –

Смежные вопросы