bitmap src = bitmapfactory.decoderesource(getresources(), imageid); //获取bitmap图片 roundedbitmapdrawable roundedbitmapdrawable = roundedbitmapdrawablefactory.create(getresources(), src); //创建roundedbitmapdrawable对象 roundedbitmapdrawable.setcornerradius(100); //设置圆角半径(根据实际需求) roundedbitmapdrawable.setantialias(true); //设置反走样 image.setimagedrawable(roundedbitmapdrawable); //显示圆角图片
动态
生成圆形图片
由于roundedbitmapdrawable类没有直接提供生成圆形图片的方法,所以生成圆形图片首先需要对原始图片进行裁剪,将图片裁剪成正方形,最后再生成圆形图片,具体实现如下:
bitmap src = bitmapfactory.decoderesource(getresources(), imageid); bitmap dst; //将长方形图片裁剪成正方形图片 if (src.getwidth() >= src.getheight()){ dst = bitmap.createbitmap(src, src.getwidth()/2 - src.getheight()/2, 0, src.getheight(), src.getheight() ); }else{ dst = bitmap.createbitmap(src, 0, src.getheight()/2 - src.getwidth()/2, src.getwidth(), src.getwidth() ); } roundedbitmapdrawable roundedbitmapdrawable = roundedbitmapdrawablefactory.create(getresources(), dst); roundedbitmapdrawable.setcornerradius(dst.getwidth() / 2); //设置圆角半径为正方形边长的一半 roundedbitmapdrawable.setantialias(true); image.setimagedrawable(roundedbitmapdrawable);
以上所述是小编给大家介绍的使用roundedbitmapdrawable生成圆角图片的方法,希望对大家有所帮助
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Android studio开发小型对话机器人app(实例代码)
Android通过Java sdk的方式接入OpenCv的方法
Android 通过cmake的方式接入opencv的方法步骤
Android Studio finish()方法的使用与解决app点击“返回”(直接退出)
Android 进度条 ProgressBar的实现代码(隐藏、出现、加载进度)
网友评论