在我们开发应用的过程中,并不是所有情况下都请求图片的URL或者加载本地图片,有时我们需要加载Base64编码的图片。这种情况出现在服务端需要动态生成的图片,比如:

  1. 二维码
  2. 图形验证码

这些应用场景有个共同点就是,这些图片都是由服务器动态生成,并不需要生成后保存成文件再返回给客户端。

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相关博客:我的博客地址

Android开发 - ImageView加载Base64编码的图片相关推荐

  1. 浏览器是直接加载二进制图片更快还是加载base64编码的图片更快?

    问题对人有帮助,内容完整,我也想知道答案0问题没有实际价值,缺少关键内容,没有改进余地 浏览器是直接加载二进制图片更快还是加载base64编码的图片更快?哪个效率更高? 例如: <img src ...

  2. Android开发解决加载图片OOM问题(非常全面 兼顾4 0以下系统)(by 星空武哥)

    转载请标明:http://blog.csdn.net/lsyz0021/article/details/51295402 我们项目中经常会加载图片,有时候如果加载图片过多的话,小则导致程序很卡,重则O ...

  3. Android 自定义ImageView加载图片

    自定义imageview功能: 可以实现设置图片显示的时候,依据本身的比例进行图片的缩放 加载图片效果: 使用ImageLoader来加载 图片: 首先将ImageLoader的jar包关联到项目中 ...

  4. Android Drawable来加载网络上的图片

    Drawable类中提供了一个静态方法可以直接添加网络上的图片 Drawable.createFromStream( new URL(img_str_url).openStream(),"s ...

  5. Android开发笔记(十)常用的图片加工操作

    APP开发自然少不了各种图片的加工处理,虽然说加工图片是美工干的活,但是码农会些简单的操作总归是好事.一些简单的加工如缩放.旋转.裁剪.格式转换,使用ACDSee就够用了,不过有些稍微复杂的操作得借助 ...

  6. android 图片变量,Android开发实现ImageView加载摄像头拍摄的大图功能

    本文实例讲述了Android开发实现ImageView加载摄像头拍摄的大图功能.分享给大家供大家参考,具体如下: 这个方法是从官方demo中摘录的,在此记录学习. 权限 android:name=&q ...

  7. android 加载网络bitmap图片 oom 简书_Android常见问题--ImageView加载图片OOM

    开发中给ImageView加载一个高质量图片时,APP抛出了"Canvas: trying to draw too large(840253440bytes) bitmap."的异 ...

  8. android imageview 设置网络图片,ImageView加载网络图片

    android网络加载图片框架Android-Universal-Image-Loader功能非常强大,其开源地址https://github.com/nostra13/Android-Univers ...

  9. android 实现异步加载图片,Android中ImageView异步加载图片类

    本源码是从网络找到经修改以方便直接调用感觉用着还可以 首先在项目中添加一个专门加载图片的类AsyncImageLoaderpackage com.demo.core; import java.io.I ...

最新文章

  1. C#中怎样将Listlt;自己定义gt;转为Json格式 及相关函数-DataContractJsonSerializer
  2. 网站优化该做好哪些细节才能更有力的吸引蜘蛛?
  3. netty 5 alph1源码分析(服务端创建过程)
  4. 左右无缝轮播图的实现
  5. tl wn322g linux驱动下载,TL-WN322G+ 2.0_WN422G+ 2.0驱动程序
  6. 【java 类加载的深入研究1】loadClass()的研究
  7. 提交自己开发的MR作业到YARN上运行的步骤
  8. iOS6新特征:UICollectionView介绍
  9. web开发项目,web前端CSS全局样式,面试必问
  10. 物联网思维导图_物联网将如何改变我们的思维方式
  11. centos系统 查看当前python执行的进程
  12. 一个简单的小程序demo
  13. rapidminer进行关联分析、分类预测、聚类分析
  14. mouseenter鼠标事件
  15. 手机不能打电话没有信号无服务器,手机信号故障排除方法
  16. word在任意页开始添加页码
  17. Python学习笔记 使用matplotlib创建Gif动图
  18. S3C2440 SDRAM内存驱动
  19. eclipse Helio项目简介
  20. The 2020 ICPC Asia Macau Regional Contest

热门文章

  1. IntelliJ IDEA 设置Output (输出窗口)窗口字体大小
  2. cocos2dx实现翻书效果。
  3. R12.2.6 installation failed with - Unable to rename database
  4. ECMAScript 发展历史
  5. MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)
  6. Nginx启动报错误unlink() “nginx.pid” failed (2: No such file or directory)
  7. android点滴之PendingIntent的使用
  8. codevs1287 矩阵乘法
  9. Java基础之synchronized的讲解
  10. Oracle游标使用大全