Android 渐变
本文介绍了Android 渐变的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
1.android 中的gradient最多只支持三种颜色的渐变,我想支持10颜色的渐变有没有其他的方法
解决方案
研究了一下自定义了一个
/**
* Created by xg on 2016/8/4.
* 自定义渐变view
*/
public class DrawView extends View {
private LinearGradient linearGradient = null;
private Paint paint = null;
public DrawView(Context context) {
super(context);
}
public DrawView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public DrawView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
linearGradient = new LinearGradient(0, 0, getWidth() - getPaddingRight(), 0,
new int[]{Color.YELLOW, Color.GREEN, Color.TRANSPARENT, Color.WHITE}, null,
Shader.TileMode.REPEAT);
paint = new Paint();
//设置渲染器
paint.setShader(linearGradient);
//绘制圆环
RectF rect = new RectF(0, 0, getWidth() - getPaddingRight(), getHeight() - getPaddingBottom());
canvas.drawRect(rect, paint);
}
}
这篇关于Android 渐变的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文