Drawable转Bitmap
public static Bitmap drawableToBitmap(Drawable drawable){ Bitmap bitmap = null; if(drawable==null){ return bitmap; } int w = drawable.getIntrinsicWidth(); int h = drawable.getIntrinsicHeight(); Bitmap.Config config = drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888 : Bitmap.Config.RGB_565; bitmap = Bitmap.createBitmap(w,h,config); Canvas canvas = new Canvas(bitmap); drawable.setBounds(0,0,w,h); drawable.draw(canvas); return bitmap; }
Bitmap转Drawable
public static Drawable bitmapToDrawable(Bitmap bitmap){ return new BitmapDrawable(bitmap); }