//最新第三方圆形头像:

https://github.com/hdodenhof/CircleImageView

https://github.com/MostafaGazar/CustomShapeImageView

一段代码,可以设置圆形头像.

返回一个Bitmap对象.

==> 该列子是从网络上获取一张图片。然后展示在ImageView的。

1:首先要确保网络权限

 <!-- 访问网络权限 --><uses-permission android:name="android.permission.INTERNET" />

 

以下是关键代码:

private InputStream inputStream;
Bitmap output;

new Thread(new Runnable() {URL url;@Overridepublic void run() {// TODO Auto-generated method stubtry {url = new URL("http://99touxiang.com/public/upload/rihan/15/13-042315_940.jpg");inputStream = url.openStream();// 将字节流转换为Bitmap,使用BitmapFactory工厂类进行转换Bitmap bitmap = BitmapFactory.decodeStream(inputStream);output = getRoundedCornerBitmap(bitmap);header_image.post(new Runnable() {@Overridepublic void run() {// TODO Auto-generated method stub// 更新界面
                            header_image.setImageBitmap(output);}});} catch (MalformedURLException e) {// TODO Auto-generated catch block
                    e.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch block
                    e.printStackTrace();}}}).start();

圆形头像代码:

1  

 /* 圆形头像
 2      *
 3      * @param bitmap
 4      * @param ratio
 5      *            按照截取比例来获取圆形图片
 6      * @return
 7      */
 8     public Bitmap getRoundedCornerBitmap(Bitmap bitmap) {
 9         if (bitmap == null) {
10             bitmap = BitmapFactory.decodeStream(inputStream);
11         }
12         Bitmap outBitmap = Bitmap.createBitmap(bitmap.getWidth(),
13                 bitmap.getHeight(), Config.ARGB_8888);//Bitmap.Config.ARGB_4444比Bitmap.Config.ARGB_8888更省内存
14         Canvas canvas = new Canvas(outBitmap);
15         final int color = 0xff424242;
16         final Paint paint = new Paint();
17         final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
18         final RectF rectF = new RectF(rect);
19         final float roundPX = bitmap.getWidth() / 2 < bitmap.getHeight() / 2 ? bitmap
20                 .getWidth() : bitmap.getHeight();
21         paint.setAntiAlias(true);
22         canvas.drawARGB(0, 0, 0, 0);
23         paint.setColor(color);
24         canvas.drawRoundRect(rectF, roundPX, roundPX, paint);
25         paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
26         canvas.drawBitmap(bitmap, rect, rect, paint);
27         return outBitmap;
28     }
29     

额.复制粘贴试试吧.

转载于:https://www.cnblogs.com/SomnusLove/p/3867417.html

android开发之 - 圆形头像相关推荐

  1. android安卓实现圆形头像效果(使用第三方开源库)

    实现圆形头像方法有很多,此处使用个人认为最为方便,以及最为快速的一种方法,使用第三方开源库.此开源库提供了一个第三方ImageView的控件:RoundedImageView. 实现步骤: 第一步:引 ...

  2. Android实现用户圆形头像+背景模糊

    效果呈现: 添加依赖: //图片加载框架implementation 'com.github.bumptech.glide:glide:3.7.0'implementation 'jp.wasabee ...

  3. Android实现用户圆形头像和模糊背景设计

    1.效果展示 2.在build.gradle(Module)中的dependencies里面加入下面依赖 注意:glide依赖的版本 //图片加载框架 implementation 'jp.wasab ...

  4. Android开发之用户头像上传

    一,概述 本篇博客总结一下自己在开发过程中应用到的一些知识,在本篇博客中带领大家完成用户头像选择或者拍照上传,并对图片进行大小的压缩,和形状的控制,可以将用户选择到的图片裁剪成圆形上传. ok,我们开 ...

  5. android qq 圆形头像,Android仿QQ圆形头像个性名片

    先看看效果图: 中间的圆形头像和光环波形讲解请看:https://www.jb51.net/article/96508.htm 周围的气泡布局,因为布局RatioLayout是继承自ViewGroup ...

  6. Android:设置圆形头像,Android截取圆形图片

    在有一些程序开发中,有时候会用到圆形,截取一张图片的一部分圆形,作为头像或者其他. 本实例就是截图圆形,设置头像的.      首先讲解一些代码 [html]  view plain copy < ...

  7. android开发之上传头像

    一.调起相机 所需权限有:相机权限(android.permission.CAMERA),文件存取权限(android.permission.WRITE_EXTERNAL_STORAGE.androi ...

  8. Android开发动态圆形浮动菜单按钮,Android编程:悬浮菜单按钮FloatingActionButton实例...

    Android编程:悬浮菜单按钮FloatingActionButton实例 环境: 主机:WIN10 开发环境:Android Studio 2.2 Preview 3 说明: 用第三方库Float ...

  9. android动态背景色圆形头像

    RandomColor randomColor = new RandomColor(); int color = randomColor.randomColor();  //随机生成一个颜色值 Dra ...

最新文章

  1. Spring Boot 操作 Redis 的各种实现
  2. 《机器人学经典教程》——2.3 人工智能
  3. java的定时器用法
  4. PostgreSQL学习笔记10之性能提升技巧
  5. ACM一类方程问题的求解[最短路建模] bzoj2118
  6. 客户端调用Web服务
  7. 单片机定时器中断原理
  8. 文件夹在哪里_在Mac电脑上截图和照片放在哪里?
  9. svn中的文件夹上的标志的意思
  10. H.264 视频编码器的研究与分析
  11. MFC工程中划定ROI区域
  12. 安川机器人外部急停信号点不开_安川机器人示教器常见故障维修方法
  13. Foxmail发送邮件,发送邮件工具类
  14. 全套汽车标志,好不容易找到的哦
  15. Nginx 实现 https
  16. Thingworx自定义扩展开发(二)- Widget Demo Coding
  17. unity代码控制物体的透明度总结
  18. 智能座舱域控制器技术发展趋势分析
  19. C语言(百钱买百鸡问题)
  20. 【解的封闭形式】Abel-Ruffini theorem(阿贝尔-鲁菲尼定理)

热门文章

  1. 制定备份策略的指导方向思考
  2. Samba与Vsftpd结合在企业中的应用
  3. 基类和派生类中使用static_cast和dynamic_cast进行类型转换
  4. Centos7特性——systemd
  5. mongoose的基本使用
  6. 利用gulp对项目html,js,css,图片进行压缩
  7. 阿里云的服务器内网互通的前提条件
  8. Device.js——检测设备平台、操作系统的Javascript 库
  9. 好久没写博客了,改天要把原博客资料整理下,弄个链接什么
  10. 运维笔试Python编程题