可以这样做吗?我正在阅读具有图像的Base64字符串的XML文件。我打算使用Base64.decode来获取图像字符串的字节数组。我卡住了,但如何在ImageView中使用它。我必须先创建一个'drawable'类,然后将其设置为ImageView的src属性?在Android的ImageView中显示byte []
谢谢!
可以这样做吗?我正在阅读具有图像的Base64字符串的XML文件。我打算使用Base64.decode来获取图像字符串的字节数组。我卡住了,但如何在ImageView中使用它。我必须先创建一个'drawable'类,然后将其设置为ImageView的src属性?在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(),然后一个位图设置为新创建的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);`
是的。感谢您的意见。 – firnnauriel 2010-08-23 07:52:19
这里是一个清晰的示例代码链接:http://www.higherpass.com/Android/Tutorials/Working-With-Images-In-Android/2/ – firnnauriel 2010-08-23 07:53:08