如何在代码中绘制这条路径

How to draw in code this path

先祝大家新年快乐!

我有一个关于在代码中绘制背景的问题。我有一个简单的 Android 游戏代码,所有资产都是 png 格式,期待背景。我不是程序员(但我是新手,我通过实例学习)。

我认为这段代码在屏幕上绘制背景云:

//draw cloud layer 1
    background_shader.setColor(getResources().getColor(R.color.blue_dark));
    int radius = DrawBackgroundCloud(canvas, (ScreenHeight() / 2), 7);
    canvas.drawRect(0, (float) ((ScreenHeight() / 2.2) + radius * 1.5), ScreenWidth(), ScreenHeight(), background_shader);

    //draw cloud layer 2
    background_shader.setColor(getResources().getColor(R.color.blue_darkest));
    radius = DrawBackgroundCloud(canvas, (int) (ScreenHeight() / 1.5), 4);
    canvas.drawRect(0, (float) ((ScreenHeight() / 1.7) + radius * 1.5), ScreenWidth(), ScreenHeight(), background_shader);

这画了一些随机的圆圈作为云,但我想改变它来画一些像山丘或山脉的东西。这是当前背景的图片以及我正在寻找的内容。

http://prntscr.com/5nqa25

谁能帮我解决这个问题?我会很感激

回复评论中的进一步问题:

你不能用 canvas.drawColor 真正做到这一点,但你可以使用适当的 Paint 对象并使用 canvas.drawPaint(或其他使用 [=12 的 canvas 方法=] object - 如果你想绘制带有渐变的形状)。

创建渐变 Paint 对象的关键部分是调用其 setShader(...) 方法。例如像这样:

mGradientPaint = new Paint();
mGradientPaint.setStyle(Paint.Style.FILL);
mGradientPaint.setShader(new LinearGradient(0, 0, 0, getHeight(), Color.TRANSPARENT, Color.GREEN, Shader.TileMode.MIRROR));