1.Drawable—>Bitmap 

Resources res=getResources(); 
 Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.sample_0);



2.Bitmap---->Drawable 

Drawable drawable =new BitmapDrawable(bmp);



另外在网上搜了些,也不知到底谁是原创的 

1、Drawable → Bitmap 

public static Bitmap drawableToBitmap(Drawable drawable) {       

         Bitmap bitmap = Bitmap.createBitmap( 

                                         drawable.getIntrinsicWidth(), 

                                         drawable.getIntrinsicHeight(), 

                                         drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888 

                                                         : Bitmap.Config.RGB_565); 

         Canvas canvas = new Canvas(bitmap); 

         //canvas.setBitmap(bitmap); 

         drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight()); 

         drawable.draw(canvas); 

         return bitmap; 

 }



2、从资源中获取Bitmap 

Resources res=getResources(); 

 Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.pic);


3、Bitmap → byte[] 

private byte[] Bitmap2Bytes(Bitmap bm){ 

     ByteArrayOutputStream baos = new ByteArrayOutputStream(); 

     bm.compress(Bitmap.CompressFormat.PNG, 100, baos); 

     return baos.toByteArray();   }


4、 byte[] → Bitmap 

  

private Bitmap Bytes2Bimap(byte[] b){ 

                     if(b.length!=0){ 

                             return BitmapFactory.decodeByteArray(b, 0, b.length); 

                     } 

                     else { 

                             return null; 

                     } 

           }