在Android中向ImageView显示byte

是否有可能做到这一点? 我正在读取一个包含图像的Base64字符串的XML文件。 我打算使用Base64.decode来获取图像字符串的字节数组。 我对如何在ImageView中使用它感到困惑。 我是否必须先创建一个’drawable’类然后将其设置为ImageView的src属性?

谢谢!

Related of "在Android中向ImageView显示byte"

您可以使用BitmapFactory.decodeByteArray()来执行解码。

如果其他人偶然发现这个问题,这里是代码

import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.widget.ImageView; public class ModelAssistant { public static void setImageViewWithByteArray(ImageView view, byte[] data) { Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length); view.setImageBitmap(bitmap); } } 
 // Convert bytes data into a Bitmap Bitmap bmp = BitmapFactory.decodeByteArray(bytes, 0, bytes.length); ImageView imageView = new ImageView(ConversationsActivity.this); // Set the Bitmap data to the ImageView imageView.setImageBitmap(bmp); // Get the Root View of the layout ViewGroup layout = (ViewGroup) findViewById(android.R.id.content); // Add the ImageView to the Layout layout.addView(imageView); 

我们使用Bitmap.decodeByteArray()将字节数据转换为Bitmap,然后将其设置为新创建的ImageView。

 byte[] pic = intent.getByteArrayExtra("pic");` capturedImage = (ImageView) findViewById(R.id.capturedImage);`Bitmap bitmap = BitmapFactory.decodeByteArray(pic, 0, pic.length);` Bitmap bitmap1 = Bitmap.createScaledBitmap(bitmap,capturedImage.getWidth(),capturedImage.getHeight(),true);` capturedImage.setImageBitmap(bitmap1);`