之前写了个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序列化失败的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对华域联盟网站的支持!
声明:本站(华域联盟www.cnhackhy.com)所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)