在Android中有时候需要将图片显示成圆角图片,此处记录一种方法,运用ViewOutlineProvider这个抽象类来动态实现圆角图片,厢房上效果图:

实现代码如下:
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
public class ClipOutLineProvider extends ViewOutlineProvider {
@Override
public void getOutline(View view, Outline outline) {
int width = view.getWidth();
int height = view.getHeight();
final int margin = Math.min(width, height) / 10;
outline.setRoundRect(margin, margin, view.getWidth() - margin,
view.getHeight() - margin, margin / 2);
}
}
然后在你需要将图片设置成圆角的地方按照如下调用:
ClipOutLineProvider clipOutLineProvider = new ClipOutLineProvider();
testIv.setImageResource(R.drawable.zyz);
testIv.setClipToOutline(true);
testIv.setOutlineProvider(clipOutLineProvider);
其中你要想圆角设置不对图片生效,可以调用testIv.setClipToOutline(false);
引用的照片人物,如有侵权,请告知删除!
网友评论