我有一个类在那里我有一个Drawable
作为成员。
这个类我使用作为整个活动的发送数据Parcelable
额外费用。
对于我已经扩展了parceble,并实现所需的功能。
我能够发送使用读/写INT /串的基本数据类型。
但我面临的问题,同时编组的可绘制对象。
对于我试图转换Drawable
到byte array
,但我正在逐渐造型异常。
我使用下面的代码隐蔽我可绘制到字节数组:
Bitmap bitmap = (Bitmap)((BitmapDrawable) mMyDrawable).getBitmap();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, stream);
byte[]byteArray = stream.toByteArray();
out.writeInt(byteArray.length);
out.writeByteArray(byteArray);
而转换的字节数组绘制我使用下面的代码:
final int contentBytesLen = in.readInt();
byte[] contentBytes = new byte[contentBytesLen];
in.readByteArray(contentBytes);
mMyDrawable = new BitmapDrawable(BitmapFactory.decodeByteArray(contentBytes, 0, contentBytes.length));
当我运行此我得到类转换异常。
我们怎么可以写/使用HashMap的传递绘制对象?
有没有什么办法,使我们可以在包裹通过绘制对象。
谢谢。