Android 图片设置圆角
android中经常会遇到对图片进行二次处理,例如加圆角,或者显示圆形图片
方法一:
通过第三方框架glide实现图片显示有圆角,有三种写法如下:
1.1,第一种实现:
requestoptions options = new requestoptions().error(r.drawable.img_load_failure).bitmaptransform(new roundedcorners(30));//图片圆角为30
glide.with(this).load(url) //图片地址
.apply(options)
.into(imagview);
1.2,第二种实现:
requestoptions requestoptions = new requestoptions();
requestoptions.placeholder(r.drawable.ic_launcher_background);
requestoptions.circlecroptransform();
requestoptions.transforms( new roundedcorners(30));
glide.with(this).load(url) //图片地址
.apply(options)
.into(imagview);
1.3,第三种实现:
requestoptions options = new requestoptions().centercrop() .transform(new roundtransform(this,30));
glide.with(this).load(url) //图片地址
.apply(options)
.into(imagview);
public class roundtransform extends bitmaptransformation {
private static float radius = 0f;
public roundtransform(context context) {
this(context, 4);
}
public roundtransform(context context, int dp) {
super(context);
this.radius = resources.getsystem().getdisplaymetrics().density * dp;
}
@override
protected bitmap transform(bitmappool pool, bitmap totransform, int outwidth, int outheight) {
bitmap bitmap = transformationutils.centercrop(pool, totransform, outwidth, outheight);
return roundcrop(pool, bitmap);
}
private static bitmap roundcrop(bitmappool pool, bitmap source) {
if (source == null) return null;
bitmap result = pool.get(source.getwidth(), source.getheight(), bitmap.config.argb_8888);
if (result == null) {
result = bitmap.createbitmap(source.getwidth(), source.getheight(), bitmap.config.argb_8888);
} 无锡人流多少钱 http://www.bhnfkyy.com
canvas canvas = new canvas(result);
paint paint = new paint();
paint.setshader(new bitmapshader(source, bitmapshader.tilemode.clamp, bitmapshader.tilemode.clamp));
paint.setantialias(true);
rectf rectf = new rectf(0f, 0f, source.getwidth(), source.getheight());
canvas.drawroundrect(rectf, radius, radius, paint);
return result;
}
public string getid() {
return getclass().getname() + math.round(radius);
}
@override
public void updatediskcachekey(messagedigest messagedigest) {
}
}
上一篇: Maven 安装及配置
推荐阅读
-
Android中检查网络连接状态的变化无网络时跳转到设置界面
-
Android Studio 基础之获取Wifi 的状态,设置 Wifi 的开关状态,并监听 Wifi 的状态变化方法整理
-
php图片文件,下载文件,防盗链设置方法
-
Android实现轮播图片展示效果
-
织梦无法放在二级目录 放在二级目录之后 所有的图片 还有css文件全都不显示了 哪位高手知道怎么回事 咋设置
-
黄聪:CSS+DIV 设置圆角边框加阴影效果_html/css_WEB-ITnose
-
Android平台上图片/视频选择,编辑和压缩的一站式解决方案
-
android 端拍照并运用Tesseract OCR 识别图片中字符
-
CSDN-markdown编辑器怎么设置图片大小 图片居中
-
Android在TextView中直接添加图片