我的应用程序使用的API在JSON响应中为我提供了关于String格式的小图标,如下所示:
{"code":"5","data":[{"icon":"iVBOR_VERY_BIG_STRING_HERE_0kJggg==","catName":"Name","catId":1}]}
我使用Retrofit进行请愿,并使用GSON解析此回复并管理" icon"像String变量一样,最后我的POJO模型类有一个给我一个Bitmap的方法:
public Bitmap getIconBitmap() {
if (getIcon() != null) {
InputStream stream = new ByteArrayInputStream(Base64.decode(getIcon().getBytes(), Base64.DEFAULT));
Bitmap bitmap = BitmapFactory.decodeStream(stream);
return bitmap;
} else {
return null;
}
}
当我想在ImageView上加载图标时,我使用:
imgView.setImageBitmap(myObject.getIconBitmap());
我认为将来我可能会遇到非常严重的性能问题,如果Bitmap很大并且我不想使用Picasso来加载图标并利用所有实现的功能但我不知道什么是正确的方法。