首先是将图像转换为二进制字节数组进行存储

// ------------------------将drawable 图像转化成二进制字节----------------public  synchronized  byte[] drawableToByte(Drawable drawable) {if (drawable != null) {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);drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),drawable.getIntrinsicHeight());drawable.draw(canvas);int size = bitmap.getWidth() * bitmap.getHeight() * 4;// 创建一个字节数组输出流,流的大小为sizeByteArrayOutputStream baos = new ByteArrayOutputStream(size);// 设置位图的压缩格式,质量为100%,并放入字节数组输出流中bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos);// 将字节数组输出流转化为字节数组byte[]byte[] imagedata = baos.toByteArray();return imagedata;}return null;}


下面是将二进制字节数组进行转换为drawable图像 对象.

 
public synchronized Drawable byteToDrawable(byte[] img) {Bitmap bitmap;if (img != null) {bitmap = BitmapFactory.decodeByteArray(img,0, img.length);Drawable drawable = new BitmapDrawable(bitmap);            return drawable;}return null;}

这个方法应该在开发中会经常用到,留给大家吧!

更多相关文章

  1. Android解析JSON
  2. Android新增一个音频类型及双音频输出的实现
  3. Android/Java中的常用签名算法
  4. Android(安卓)Bitmap与String互转
  5. Android(安卓)默认声音大小修改
  6. android解析json数组
  7. Android——JSONObject解析JSON数据
  8. android中json的序列化与反序列化
  9. Android日志输出单元测试Debug

随机推荐

  1. Retrofit源码解析(一)
  2. ArcGIS for Android示例解析之FeatureLay
  3. Android(安卓)GridView之实现单元格合并,
  4. 关于Android(安卓)Activity之间传递数据
  5. android studio连接手机(小米5s)
  6. Android(安卓)中文API
  7. Android(安卓)AOP
  8. 一些经典的android博客或是android小型程
  9. Android(安卓)网络图片加载之cude 框架
  10. Android(安卓)Notification常见样式总结