public Bitmap toRoundBitmap(Bitmap bitmap) {
//圆形图片宽高
int width = bitmap.getWidth();
int height = bitmap.getHeight();
//正方形的边长
int r = 0;
//取最短边做边长
if(width > height) {
r = height;
} else {
r = width;
}
//构建一个bitmap
Bitmap backgroundBmp = Bitmap.createBitmap(width,
height, Config.ARGB_8888);
//new一个Canvas,在backgroundBmp上画图
Canvas canvas = new Canvas(backgroundBmp);
Paint paint = new Paint();
//设置边缘光滑,去掉锯齿
paint.setAntiAlias(true);
//宽高相等,即正方形
RectF rect = new RectF(0, 0, r, r);
//通过制定的rect画一个圆角矩形,当圆角X轴方向的半径等于Y轴方向的半径时,
//且都等于r/2时,画出来的圆角矩形就是圆形
canvas.drawRoundRect(rect, r/2, r/2, paint);
//设置当两个图形相交时的模式,SRC_IN为取SRC图形相交的部分,多余的将被去掉
paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
//canvas将bitmap画在backgroundBmp上
canvas.drawBitmap(bitmap, null, rect, paint);
//返回已经绘画好的backgroundBmp
return backgroundBmp;
}
相关推荐
本文将详细介绍如何在Android平台上实现不依赖图片遮盖的圆形头像功能。 首先,我们来了解为什么需要避免使用图片遮盖的方式。传统的图片遮盖方法是通过在方形图片上添加一个圆形透明遮罩,以达到圆形效果。但这种...
FloatingActionButton是Android Design Support Library中的一种特殊按钮,它的外观类似一个小圆圈,通常用于表示"添加"或"下一步"等操作。它的动画效果使其更具吸引力,使用方法类似于普通的ImageView。 5. **...
本文将深入探讨如何利用自定义View来模仿微信、QQ等社交应用中常见的未读消息数量提示效果,即在图标或头像的右上角显示一个带有数字的红色圆圈。这种提示方式能有效地提醒用户有未查看的信息,提升用户体验。 首先...
而"圆形图像的显示"则通常用于个人资料头像或者其它需要突出个体形象的地方,它能够提供更加直观和美观的视觉效果。 "上拉加载"(Load More)是指当用户滚动到页面底部时,应用会自动加载更多数据,这在大数据量的...
CircleImageView是一款在Android开发中广泛使用的库,它允许开发者创建圆形的图像视图,使得原本矩形的头像或其他图片可以以圆形的方式显示,适用于个人资料、社交应用等场景。这个库是由Dave Smith开发的,并且是...
在Android开发中,我们经常需要将普通的ImageView显示为圆形,以满足特定的UI设计需求,例如用户头像或者一些图标。本教程将详细介绍如何在Android中实现一个圆形的ImageView。 首先,我们需要创建一个新的自定义...
在Android开发中,CircleLayout可以用于创建各种有趣的界面效果,比如轮播菜单、社交网络的头像展示等。 首先,让我们深入理解CircleLayout的工作原理。它通过重写Android的布局测量和布局过程,计算每个子视图的...
在Android开发中,`CircelView`通常指的是用于显示圆形头像的自定义视图。这个视图的主要目的是将方形或矩形的图片转换为圆形,以适应UI设计中的圆形头像需求,例如社交应用、个人资料界面等。下面我们将深入探讨...
1.当前功能如果需要网络请求的,图标外层会有一个半蓝半紫的圆圈(就是最下面的圆圈) 2.我的工具需要对应的功能点击右上角的收藏,会出现在我的工具箱 3.我的工具箱太多了,长按对应的图标,可以拖动排序 指南针...
至此,我们已经创建了一个自定义的圆形ImageView,它可以显示任何图片并具有可定制的边框颜色和宽度。这个组件可以广泛应用于用户头像、应用图标等场景,为应用增添个性化元素。 需要注意的是,自定义视图时要考虑...
这个包被命名为“圆角字母”,因为主要思想是像 Android 5.0 联系人一样在圆圈内的字母。 后来的想法演变成更多的形状。 :raising_hands: 特征 :check_mark: 5 种形状:圆形(默认)、三角形、矩形、五边形、六边形...