Ami*_*per 11 base64 camera android
嗨stackoverflow团队我有一个问题,将base64字符串转换为android中的位图.我正在使用相机来获取图像,我将图像转换为base64字符串以发布到服务器.我想在imageview中显示该图像,以便在从相机中获取图像后如何在ImageView中显示图像.请帮我解决问题.
Tuo*_*asR 21
假设您的图像数据位于名为myImageData的String中,以下应该可以解决这个问题:
byte[] imageAsBytes = Base64.decode(myImageData.getBytes(), Base64.DEFAULT);
ImageView image = (ImageView)this.findViewById(R.id.ImageView);
image.setImageBitmap(
BitmapFactory.decodeByteArray(imageAsBytes, 0, imageAsBytes.length)
);
Run Code Online (Sandbox Code Playgroud)
对于Base64解码,您可以使用http://iharder.sourceforge.net/current/java/base64/,因为Android在2.2之前不包含Base64支持.
注意,我实际上并没有运行此代码,因此您必须双重检查错误.
编辑:接受的帖子现已更新,以复制我的答案,或者是正确的
至少在JellyBean,KitKat或Lollipop中,接受的答案是不正确的.您应该使用以下适用于JPEG,PNG或GIF图像的内容.
byte[] imageAsBytes = Base64.decode(myImageData.getBytes(), Base64.DEFAULT);
ImageView image = (ImageView)this.findViewById(R.id.ImageView);
image.setImageBitmap(
BitmapFactory.decodeByteArray(imageAsBytes, 0, imageAsBytes.length)
);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
29785 次 |
最近记录: |