我必须将一个字节转换为位图并将其设置为 imageview
我确实有方法将 ImageView 中的位图转换为字节,然后稍后插入,
public static byte[] ConvertDrawableToByteArray(Drawable drawableResource) {
Bitmap imageBitmap = ((BitmapDrawable) drawableResource).getBitmap();
ByteArrayOutputStream imageByteStream = new ByteArrayOutputStream();
imageBitmap.compress(Bitmap.CompressFormat.JPEG, 100, imageByteStream);
byte[] imageByteData = imageByteStream.toByteArray();
return imageByteData;
}
当我想从数据库检索图像并将其显示在 ImageView 中时
//--
byte[] image_b = c.getBlob(4);
Bitmap b = BitmapFactory.decodeByteArray(image_b, 0, image_b.length);
img.setImageBitmap(b);
但它什么也没返回
出了什么问题,请帮忙
非常感谢
最佳答案
我猜这是因为光标没有返回任何内容。也许 Blob 太大而无法一次性查询,因为 android 游标限制为每个查询 1 mb,请再次检查您的 stacktrace/logcat,如果 Blob 大小是问题,您可以尝试将字节拆分为较小的大小并将其存储在你的数据库
关于java - 将字节转换为位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15504904/