android – 如何设置笔触颜色以在画布上绘制矩形?

前端之家收集整理的这篇文章主要介绍了android – 如何设置笔触颜色以在画布上绘制矩形?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想绘制一个圆形矩形,其笔划为蓝色,填充为红色,但我在Paint类中找不到设置笔触颜色的方法.我怎样才能做到这一点?
mCanvas.drawColor(mBackgroundColor,PorterDuff.Mode.CLEAR);
    mCanvas.setDrawFilter(mPaintFlagsDrawFilter);

    mPaint.setStyle(Paint.Style.FILL_AND_STROKE);
    mPaint.setColor(Color.RED);
    mPaint.setStrokeWidth(2);
    mPaint.setStrokeCap(Paint.Cap.ROUND);
    mRectF.set(0,mWidth,mHeight);
    mCanvas.drawRoundRect(mRectF,10,mPaint);

解决方法

油漆一次只允许一种颜色.
mCanvas.drawColor(mBackgroundColor,PorterDuff.Mode.CLEAR);
mCanvas.setDrawFilter(mPaintFlagsDrawFilter);

mFillPaint.setStyle(Paint.Style.FILL);
mFillPaint.setColor(Color.RED);
mStrokePaint.setStyle(Paint.Style.STROKE);
mStrokePaint.setColor(Color.BLUE);
mStrokePaint.setStrokeWidth(2);
mStrokePaint.setStrokeCap(Paint.Cap.ROUND);
mRectF.set(0,mHeight);
mCanvas.drawRoundRect(mRectF,mFillPaint);
mCanvas.drawRoundRect(mRectF,mStrokePaint);

如果您发现圆角矩形看起来不正确,则可能会在视图的边界处剪切.调整RectF以允许StrokeWidth的一半:

mRectF.set(1,1,mWidth - 1,mHeight - 1);

猜你在找的Android相关文章