【发布时间】:2015-06-24 18:13:45
【问题描述】:
这是我的绘画观点:
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
this.canvas = canvas;
canvas.drawCircle(this.getWidth()/2,this.getHeight()/2,100, locationPaint);
canvas.drawCircle(this.getWidth()/2,this.getHeight()/2,300, locationPaint);
//canvas.drawRect(this.getWidth()/2,this.getHeight()/2,100,100, locationPaint);
}
public void drawCircle(float centerX, float centerY, float width, float height){
int ratio = 10;
canvas.drawCircle(centerX/ratio,centerY/ratio,width/ratio,circlePaint);
canvas.drawCircle(this.getWidth()/2,this.getHeight()/2,200, locationPaint);
}
但是当我调用drawCircle时,它没有在视图上绘制任何东西,我不知道为什么......你知道我是否必须在某个地方调用onDraw吗?
【问题讨论】:
-
“不要打电话给我们,我们会打电话给你” -
onDraw是由系统调用的,而不是你 -
你试过画线吗?
-
前两个canvas.drawCircle正在绘制。是 drawCircle 函数中的绘制不绘制
-
您的
locationPaint是否已正确初始化?是否有例如。颜色设置? -
请不要在
onDraw方法之外调用任何与画布相关的方法