The best solution would be if you create a Bitmap
from that Drawable and then save it to a File.
Use this to get the Bitmap from Drawable:
Drawable yourDrawable;
Bitmap bitmap = ((BitmapDrawable)yourDrawable).getBitmap();
Create a File from Bitmap:
//create a file to write bitmap data
File f = File(context.getCacheDir(), filename);
f.createNewFile();
//Convert bitmap to byte array
ByteArrayOutputStream bos = new ByteArrayOutputStream();
bitmap.compress(CompressFormat.PNG, 0 /*ignored for PNG*/, bos);
byte[] bitmapdata = bos.toByteArray();
//write the bytes in file
FileOutputStream fos = new FileOutputStream(f);
fos.write(bitmapdata);
fos.flush();
fos.close();
Dont forget manifest permission:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
After you do this you can use Universal Image Loader
to load the file to your ImageView