android

android radialgradient如何设置中心点

小樊
82
2024-12-02 10:39:40
栏目: 编程语言

在Android中,要设置RadialGradient的中心点,您需要使用setCenter()方法。以下是一个简单的示例,展示了如何创建一个径向渐变,并将其中心点设置为视图的中心:

import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.RadialGradient;
import android.graphics.Shader;
import android.os.Bundle;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(new View(this) {
            @Override
            protected void onDraw(Canvas canvas) {
                super.onDraw(canvas);

                // 创建径向渐变
                RadialGradient radialGradient = new RadialGradient(
                        getWidth() / 2, getHeight() / 2, // 中心点坐标
                        Math.min(getWidth(), getHeight()) / 2, // 渐变半径
                        Color.RED, // 起始颜色
                        Color.BLUE, // 结束颜色
                        1 // 渐变中心点的相对偏移量(0-1)
                );

                // 将渐变应用到画笔
                Paint paint = new Paint();
                paint.setShader(radialGradient);

                // 绘制渐变
                canvas.drawCircle(getWidth() / 2, getHeight() / 2, getWidth() / 2, paint);
            }
        });
    }
}

在这个示例中,我们创建了一个径向渐变,将其中心点设置为视图的中心,并设置了起始颜色为红色,结束颜色为蓝色。然后,我们将渐变应用到画笔上,并在画布上绘制一个圆形。

0
看了该问题的人还看了