Android自定义圆视图反向背景颜色

时间:2015-01-27 15:47:51

标签: android android-custom-view

我不知道怎么称呼一个圆圈的外太空......一个面具或反面的空间?我希望你能通过观看图片了解我想说的话。

原始图片:

enter image description here

自定义视图:

enter image description here

如您所见,我想在我的视野中应用透明黑色,但我不知道从哪里开始。

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);
    }

}

1 个答案:

答案 0 :(得分:0)

可以通过PorterDuff实现。您可以分配一个画家对象,指定所需的PorterDuff模式,并绘制带有该绘制的圆,以及相应于您在位图之前或之后绘制的模式

canvas.drawCircle(getWidth()/2, getWidth()/2, getWidth()/2, mPorterDuffPainter);