Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 增加使用PathDashPathEffect绘制的线条的笔划宽度_Android - Fatal编程技术网

Android 增加使用PathDashPathEffect绘制的线条的笔划宽度

Android 增加使用PathDashPathEffect绘制的线条的笔划宽度,android,Android,图像中的最后一行是使用PathDashPathEffect绘制的。我使用下面的代码来画这条线 mPaint = new Paint(); mPaint.setAntiAlias(true); mPaint.setDither(true); mPaint.setColor(color); // mPaint.setAlpha(120); mPaint.setStyle(Paint.Style.STROKE);

图像中的最后一行是使用PathDashPathEffect绘制的。我使用下面的代码来画这条线

mPaint = new Paint();
        mPaint.setAntiAlias(true);
        mPaint.setDither(true);
        mPaint.setColor(color);
        //      mPaint.setAlpha(120);
        mPaint.setStyle(Paint.Style.STROKE);
        mPaint.setStrokeJoin(Paint.Join.ROUND);
        mPaint.setStrokeCap(Paint.Cap.ROUND);
        mPaint.setStrokeWidth(6.0f);

        cornerpatheffect = new CornerPathEffect(10);
        pathdashpath = new PathDashPathEffect(makePathDash(), 10, 3,
                PathDashPathEffect.Style.MORPH);
        patheffect = new ComposePathEffect(cornerpatheffect, pathdashpath);
        mPaint.setPathEffect(pathdashpath);


private Path makePathDash() {
        Path p = new Path();
        p.moveTo(-6, 9/2);
        p.lineTo(6,9/2);
        p.lineTo(6,9/2-1);
        p.lineTo(-6, 9/2-1);
        p.close();
        p.moveTo(-6, -(9/2));
        p.lineTo(6,-(9/2));
        p.lineTo(6, -(9/2-1));
        p.lineTo(-6, -(9/2-1));
        return p;
    }

有没有办法增加两行的笔划宽度。请参考,setstrokewidth方法不支持PathDashPathEffect。谁能帮我一下吗?

我不知道你是否还需要答案

是的,你只需要像这样改变坐标:

private Path makePathDash() {
        Path p = new Path();
        p.moveTo(-6, 9/2);
        p.lineTo(6,9/2);
        p.lineTo(6,9/2-2);
        p.lineTo(-6, 9/2-2);
        p.close();
        p.moveTo(-6, -(9/2));
        p.lineTo(6,-(9/2));
        p.lineTo(6, -(9/2-2));
        p.lineTo(-6, -(9/2-2));
        return p;
    }
并将(-2)更改为(-3)以具有更厚的