Android中的Bitmap序列化失败的解决方法
程序员文章站
2023-11-14 14:47:46
之前写了个user类(实现了serializable接口),类变量里有bitmap类型的头像图片,bitmap导致序列化不成功,报 "android.graphics.bi...
之前写了个user类(实现了serializable接口),类变量里有bitmap类型的头像图片,bitmap导致序列化不成功,报 "android.graphics.bitmap"相关错误
解决方法之一:把bitmap对象替换成byte数组来表示间接表示图片,在需要bitmap的时候再讲byte数组转换成bitmap对象。这是因为byte数组和bitmap之间的可以转化,实现也比较方便。
附byte数组与bitmap的相互转换方法:
bitmap转换成byte数组
private byte[] bitmap2bytes(bitmap bitmap) { bytearrayoutputstream baos = new bytearrayoutputstream(); bitmap.compress(compressformat.jpeg, 100, baos); return baos.tobytearray(); }
byte数组转换成bitmap
private bitmap byte2bitmap(byte[] data) { return bitmapfactory.decodebytearray(data, 0, data.length); }
总结
以上所述是小编给大家介绍的android中的bitmap序列化失败的解决方法,希望对大家有所帮助
上一篇: Python实现保证只能运行一个脚本实例
推荐阅读