温馨提示×

android lineargradient怎样创建

小樊
84
2024-11-16 13:48:41
栏目: 编程语言

在Android中,要创建一个LinearGradient,你需要使用Shader类。以下是一个简单的示例,展示了如何创建一个从左到右的线性渐变:

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.LinearGradient;
import android.graphics.Paint;
import android.graphics.Shader;
import android.view.View;

public class GradientView extends View {

    private LinearGradient linearGradient;
    private Paint paint;

    public GradientView(Context context) {
        super(context);
        init();
    }

    private void init() {
        // 创建一个从左到右的线性渐变,从红色(0xFFFF0000)到蓝色(0xFF0000FF)
        linearGradient = new LinearGradient(0, 0, getWidth(), getHeight(), 0xFFFF0000, 0xFF0000FF, Shader.TileMode.CLAMP);

        // 创建一个Paint对象,并设置使用线性渐变
        paint = new Paint();
        paint.setShader(linearGradient);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        // 使用Paint对象绘制一个矩形
        canvas.drawRect(0, 0, getWidth(), getHeight(), paint);
    }
}

在这个示例中,我们创建了一个名为GradientView的自定义视图。在构造函数中,我们调用了init()方法来初始化线性渐变和画笔。init()方法中,我们创建了一个从左到右的线性渐变,颜色从红色(0xFFFF0000)到蓝色(0xFF0000FF),并使用Shader.TileMode.CLAMP模式。然后,我们创建了一个Paint对象,并将其设置为使用我们创建的线性渐变。

onDraw()方法中,我们使用Paint对象绘制了一个矩形。由于我们已经将画笔设置为使用线性渐变,因此绘制的矩形将具有渐变效果。

0