在我們開發應用的過程中,並不是所有情況下都請求圖片的URL或者加載本地圖片,有時我們需要加載Base64編碼的圖片。這種情況出現在服務端需要動態生成的圖片,比如:
- 二維碼
- 圖形驗證碼
- ...
這些應用場景有個共同點就是,這些圖片都是由服務器動態生成,並不需要生成后保存成文件再返回給客戶端。
Android中ImageView加載Base64圖片其實非常簡單,並不需要引入第三方庫,方法如下:
import android.util.Base64;
# 代碼片段
String base64 = "data:image/png;base64......"
byte[] decodedString = Base64.decode(base64, Base64.DEFAULT);
Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
imageView.setImageBitmap(decodedByte);
這樣就可以將Base64的圖片加載到ImageView中了。其實原理很簡單,就是先把Base64編碼字符串解碼成Bitmap,然后再講Bitmap設置到ImageView中。
如有更多疑問,請參考我的其它Android相關博客:我的博客地址
