Android Drawable和Bitmap的转换实例详解
AndroidDrawable和Bitmap的转换实例详解
通常我们需要通过代码去设置图片,就需要设置图片Bitmap和Drawable的转换,下面整理了几种方式
一、Bitmap转Drawable
Bitmapbm=xxx;//xxx根据你的情况获取 BitmapDrawablebd=newBitmapDrawable(bm);//因为BtimapDrawable是Drawable的子类,最终直接使用bd对象即可。
二、Drawable转Bitmap
Drawabled=xxx;//xxx根据自己的情况获取drawable BitmapDrawablebd=(BitmapDrawable)d; Bitmapbm=bd.getBitmap(); //最终bm就是我们需要的Bitmap对象了。
从资源中获取Bitmap
publicstaticBitmapgetBitmapFromResources(Activityact,intresId){
Resourcesres=act.getResources();
returnBitmapFactory.decodeResource(res,resId);
}
byte[]→Bitmap
publicstaticBitmapconvertBytes2Bimap(byte[]b){
if(b.length==0){
returnnull;
}
returnBitmapFactory.decodeByteArray(b,0,b.length);
}
//Bitmap→byte[]
publicstaticbyte[]convertBitmap2Bytes(Bitmapbm){
ByteArrayOutputStreambaos=newByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.PNG,100,baos);
returnbaos.toByteArray();
}
只是很简单代码片段,还是很容易懂得
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!