【发布时间】:2018-07-10 02:54:52
【问题描述】:
我一直在尝试使用以下代码在 android 中绘制彩虹色环:
public void init(){
ringPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
ringPaint.setStyle(Paint.Style.STROKE);
ringPaint.setStrokeWidth(8f);
ringPaint.setShader(new SweepGradient(0, 0, COLORS2, null));
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawCircle(getWidth()/2f,getHeight()/2f ,getHeight()/2f - 16f,ringPaint);
}
COLOR2 的值如下:
final int[] COLORS2 = new int[]{Color.parseColor("#33004c"), Color.parseColor("#4600d2"),
Color.parseColor("#0000ff"), Color.parseColor("#0099ff"),
Color.parseColor("#00eeff"),Color.parseColor("#00FF7F"),
Color.parseColor("#48FF00"),Color.parseColor("#B6FF00"),
Color.parseColor("#FFD700"),Color.parseColor("#ff9500"),
Color.parseColor("#FF6200"),Color.parseColor("#FF0000"),
Color.parseColor("#33004c")};
问题是我只得到了颜色的一个子集,可能是数组中的 3 或 4 种不同的颜色,我不完全确定为什么,谁能提供一些关于为什么会这样的建议?
【问题讨论】:
-
你能截图你的戒指吗?
-
@Jacky...完成..
标签: android android-view ondraw sweepgradient