如何将base64字符串转换为位图

时间:2017-10-17 06:35:22

标签: android base64 android-bitmap

我正在尝试将base64 String转换为Bitmap,然后在Android中将Bitmap设置为ImageView,但我的应用程序非常慢。怎么能让它更快?

这是我的代码:

 Bitmap myImage = decodeBase64(im);
 planetCategoryImage.setImageBitmap(myImage);

我的方法:

public static Bitmap decodeBase64(String input)
{
    byte[] decodedByte = Base64.decode(input, 0);
    return BitmapFactory.decodeByteArray(decodedByte, 0, decodedByte.length);
}

非常感谢。

1 个答案:

答案 0 :(得分:0)

如果必须使用base64字符串,可能不会更快。但是,如果您在执行此操作时显着“冻结”该应用,请在AsyncTask中使用该应用并在等待时显示ProgressBar或加载图标。

编辑: 您可以将它们加载到合适的大小,从而避免加载太多数据。看看如何实现它:

https://developer.android.com/topic/performance/graphics/load-bitmap.html

或使用图像加载库为您完成所有操作。

例如Glide或Picasso(我更喜欢Glide)

https://github.com/bumptech/glide

http://square.github.io/picasso/