1

キャンバスにいくつかの円を描いています。この円のそれぞれに放射状のグラデーションを適用したいと思います。現在、各円に新しいグラデーションを割り当てていますが、これはあまり良い考えではないと思います。

protected void onDraw(Canvas canvas) 
{
    int radius = 6;
    int cx = radius;
    int cy = radius ;

    for(int i = 0; i < nbPage; i++)
    {
        if(i % 12 ==  0 && i > 0) {
            cx = radius;
            cy += 20;
        }

        RadialGradient gradient = new RadialGradient(cx, cy, radius, 0xFFFFFFFF,
                0xFF000000, android.graphics.Shader.TileMode.CLAMP);
        p.setDither(true);
        p.setShader(gradient);

        canvas.drawCircle(cx, cy, radius, p);
        cx += 20; //16px + 4 de marge

    }
}

各円の半径は同じだが座標が異なることを知って、放射状グラデーションを事前に割り当てる解決策はありますか?

ありがとう

4

1 に答える 1