android 自定义渐变颜色的drawable的示例代码
以下是一个示例代码,演示如何创建一个自定义渐变颜色的drawable:
import android.graphics.Color;
import android.graphics.LinearGradient;
import android.graphics.Shader;
import android.graphics.drawable.ShapeDrawable;
import android.graphics.drawable.shapes.RectShape;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
View gradientView = findViewById(R.id.gradient_view);
// 创建一个矩形形状
RectShape rectShape = new RectShape();
// 创建一个渐变颜色的画笔
ShapeDrawable gradientDrawable = new ShapeDrawable(rectShape);
// 设置渐变颜色数组
int[] gradientColors = {Color.RED, Color.YELLOW, Color.GREEN};
// 创建一个线性渐变
LinearGradient gradient = new LinearGradient(0, 0, 0, gradientView.getHeight(), gradientColors,
null, Shader.TileMode.CLAMP);
// 设置画笔的渐变着色器
gradientDrawable.getPaint().setShader(gradient);
// 设置视图的背景为渐变drawable
gradientView.setBackground(gradientDrawable);
}
}
上述代码创建了一个矩形形状,并使用线性渐变颜色将其绘制到视图的背景中。渐变颜色数组定义了一个从红色到黄色再到绿色的渐变

原文地址: http://www.cveoy.top/t/topic/hVCP 著作权归作者所有。请勿转载和采集!