android 加载圆形头像框
16lz
2021-12-18
Glide.with(PersonalActivity.this).load(userInfo.getAlbum()).transform(new CircleTransform(PersonalActivity.this)).into(mHeadimg);//头像
/** * 加载圆形头像框 */public static class CircleTransform extends BitmapTransformation { public CircleTransform(Context context) { super(context); } @Override protected Bitmap transform(BitmapPool pool, Bitmap toTransform, int outWidth, int outHeight) { return circleCrop(pool, toTransform); } private static Bitmap circleCrop(BitmapPool pool, Bitmap source) { if (source == null) return null; int size = Math.min(source.getWidth(), source.getHeight()); int x = (source.getWidth() - size) / 2; int y = (source.getHeight() - size) / 2; // TODO this could be acquired from the pool too Bitmap squared = Bitmap.createBitmap(source, x, y, size, size); Bitmap result = pool.get(size, size, Bitmap.Config.ARGB_8888); if (result == null) { result = Bitmap.createBitmap(size, size, Bitmap.Config.ARGB_8888); } Canvas canvas = new Canvas(result); Paint paint = new Paint(); paint.setShader(new BitmapShader(squared, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP)); paint.setAntiAlias(true); float r = size / 2f; canvas.drawCircle(r, r, r, paint); return result; } @Override public String getId() { return getClass().getName(); }}
更多相关文章
- Android(安卓)高仿微信头像截取 打造不一样的自定义控件
- android加载大图片
- Android滚动加载数据
- Android加载Gif图片的一般方法:Movie实现
- Android之简单了解Android(安卓)OS内部机制
- Android之Glide(非常好用的图片加载框架)
- Android(安卓)WebView 远程网页 加载本地资源js/html/css
- Android(安卓)基于dpi的资源加载
- Android中给listview/gridview设置动画(逐条加载条目动画)