开始的时候,我们先将控件实例化出来,然后将它设置一个图片给它:(记住是bitmap型的)

img = (ImageView) findViewById(R.id.imgHead);

Bitmap bitmap = BitmapFactory.decodeResource(getResources(),

R.drawable.header1);

Bitmap output = getRoundedCornerBitmap(bitmap);

img.setImageBitmap(output);

以上的代码是设置我的头像为圆形的,以前找了好久,才知道,一句代码就ok啦!好吧,我

又想错了,其实还是需要很多的代码,这里还需要一个方法,里面才是实现圆形的核心代码。

/**

* 圆形头像

*

* @param bitmap

* @param ratio

* 按照截取比例来获取圆形图片

* @return

*/

public Bitmap getRoundedCornerBitmap(Bitmap bitmap) {

if (bitmap == null) {

bitmap = BitmapFactory.decodeResource(getResources(),

R.drawable.gui);

}

Bitmap outBitmap = Bitmap.createBitmap(bitmap.getWidth(),

bitmap.getHeight(), Config.ARGB_8888);

Canvas canvas = new Canvas(outBitmap);

final int color = 0xff424242;

final Paint paint = new Paint();

final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());

final RectF rectF = new RectF(rect);

final float roundPX = bitmap.getWidth() / 2 < bitmap.getHeight() / 2 ? bitmap

.getWidth() : bitmap.getHeight();

paint.setAntiAlias(true);

canvas.drawARGB(0, 0, 0, 0);

paint.setColor(color);

canvas.drawRoundRect(rectF, roundPX, roundPX, paint);

paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));

canvas.drawBitmap(bitmap, rect, rect, paint);

return outBitmap;

}

以上这些代码才可以使得一个图形化控件成为一个圆形

java gui设置圆形按钮_简单的设置圆形按钮相关推荐

  1. java插件如何设置信任_求一键设置添加IE信任站点及启用ActiveX控件工具

    http://blog.csdn.net/dongdingbaihe/article/details/38755011 [Asm] 纯文本查看 复制代码添加可信任站点IP地址为:192.168.1.1 ...

  2. java gui 日历_Java实现简单日历小程序 Java图形界面小日历开发

    今天给大家介绍一下如何用Java swing开发一款简单的小日历,下面我们来看代码: 首先创建一个CalendarBean类,用于基本的日期计算: package other1; import jav ...

  3. java gui 开发工具_用什么工具进行java GUI的开发?

    这个就非常多啦,有现成的插件,也有IDE环境,下面我简单介绍一下: WindowBuilder 这是一个非常不错的Java GUI开发插件,支持Swing, AWT,SWT等众多组件,安装完成后,可以 ...

  4. java内存-xms 单位_谈谈内存设置中的xms,xmx等*

    可以使用-Xms来设置jvm最小能挖到的内存,观察输出结果.java -Xms300M Test 最近在网上看到一些人讨论到java.lang.Runtime类中的freeMemory(),total ...

  5. java upnp 端口映射_路由器 UPnP设置与端口映射操作步骤合集 几种常用猫设置

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 所列如没你需要的猫,可留言 实达_ADSL_2110EH 详细端口映射的设置 假设内网IP为:192.168.10.2 在IE中用http://192.1 ...

  6. java 工厂模式 计算器_简单工厂模式实现简易计算器

    packageFactoryMethodPattern;/*创建人:czc 创建时间:2019/12/16 创建用途:简单工厂模式实现计算器--主界面*/ import javax.swing.*;i ...

  7. java类成员初始化_简单了解Java类成员初始化顺序

    这篇文章主要介绍了简单了解Java类成员初始化顺序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 类中包含7中成员: 1.静态变量 static 2 ...

  8. java爬虫自动识别验证码_简单Java爬虫(一)爬取手机号码

    原创 野狗菌 希望你能喜欢 今天 关于本文: 本文介绍一个简单Java爬虫,获取网页源码,爬取电话号码. 本篇教程用我的博客一个测试网页演示. --野狗菌[希望你能喜欢] 测试页面: https:// ...

  9. java GUI怎么输入_在Swing中创建Java GUI以进行表单输入

    好吧,我已经浏览了整个互联网,但却未能找到这个问题的答案,所以也许有人可以提供一些见解. 我正在开发一个相对简单的Java应用程序,它将取代目前用于系统访问请求的Word文档.它旨在允许表单输入新的员 ...

最新文章

  1. 实战Gradle——第一部分 Gradle介绍
  2. 【暴走漫画起源考】Part2:姚明脸
  3. Spring Boot中使用LDAP来统一管理用户信息
  4. 关于linux文件挂载(一)
  5. linux,mac,unix 系统下cd 进入有空格的目录或者打开有空格的文件
  6. 漫漫MySQL之路(1.MySQL简介和诞生)
  7. jqury ajax跳转界面,jquery ajax 界面跳转失败解决方案
  8. 【Electron】Electron开发入门(八):自定义electron框架外壳(shell)的菜单(Menu)...
  9. em算法详细例子及推导_第九章-EM算法
  10. 编程语言_JavaScript_面试题005
  11. javascript学习之闭包
  12. 多数iPhone应用程序的不足之处
  13. h5拍摄身份证_H5接口调用,身份证识别
  14. 爱奇艺开源FASPell项目
  15. Git-删除文件后找回
  16. 利用TLF给文本加样式
  17. HDOJ 4238 - Programming the EDSAC 阅读理解..高精度处理
  18. 指针定义、指针与数组、指针运算、比较
  19. java类图与代码实例
  20. 一文了解 DataLeap 中的 Notebook

热门文章

  1. 怎样做才是一个独立自主的人?
  2. myeclipse+tomcat-热部署
  3. system v 消息队列(二)
  4. 2021副高考试成绩查询荆州,湖北荆州2021年4月自考成绩查询入口开通
  5. asp. net sql网上书店管理系统设计作品
  6. 国考计算机专业生报名人数,近四成岗位随便挑!2020年国考,这类专业招录人数接近一万...
  7. 计算机基础思维导图_超级简单的实操示范,教你零基础带孩子玩转风靡全球的思维导图...
  8. HALCON 21.11:深度学习笔记---分类(10)
  9. C++向函数传递数组
  10. 机器视觉:偏振片应用