我不知道怎么称呼一个圆圈的外太空......一个面具或反面的空间?我希望你能通过观看图片了解我想说的话。
原始图片:
自定义视图:
如您所见,我想在我的视野中应用透明黑色,但我不知道从哪里开始。
public class MaskView extends View {
private int mBackgroundColor;
public MaskView(Context context) {
super(context);
init();
}
public MaskView(Context context, AttributeSet set) {
super(context, set);
init();
}
public MaskView(Context context, AttributeSet set, int defStyle) {
super(context, set, defStyle);
init();
}
private void init() {
mBackgroundColor = Color.parseColor("#AA000000");
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawColor(mBackgroundColor);
}
}
答案 0 :(得分:0)
可以通过PorterDuff实现。您可以分配一个画家对象,指定所需的PorterDuff模式,并绘制带有该绘制的圆,以及相应于您在位图之前或之后绘制的模式
canvas.drawCircle(getWidth()/2, getWidth()/2, getWidth()/2, mPorterDuffPainter);