你好所有关于Stack溢出的第一篇帖子!!
我试图在画布上绘制多条线但使用不同的颜色。我的问题是线条颜色总是与数组中的最后一行相同。我正以30Hz的速度在屏幕上逐渐绘制垂直线,类似于没有任何间距的条形图。我在呼唤观点。用于运行和绘制线条的onDraw()视图的Invalidate()。
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
if (plotInfo == null)
return;
for (int i = 0; i < plotInfo.length; i++) {
//paintlineinfo = String.valueOf( plotInfo[i].paintOfLine.getColor());
canvas.drawLine(i, mDisplay.getHeight(), i, mDisplay.getHeight()-plotInfo[i].linePositionY, plotInfo[i].paintOfLine);
}
}
我相信我可能会使用Open GL,但我暂时试图避免使用它,除非有人能指出我正确的方向找一篇可能对我有帮助的好文章。
在某些时候,我想让这些线条成为多种颜色。
非常感谢任何帮助......
答案 0 :(得分:0)
我不知道从哪里得到颜色,旅行>
@Override
protected void onDraw(Canvas canvas)
{
// TODO Auto-generated method stub
super.onDraw(canvas);
if (plotInfo == null)
return;
Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
for (int i = 0; i < plotInfo.length; i++) {
paint.setColor( yourArrayOfColours.get(i) );
canvas.drawLine(i, mDisplay.getHeight(), i, mDisplay.getHeight()-plotInfo[i].linePositionY, paint);
}
}