我要疯了,想弄清楚这一点。我正在尝试创建一个 Rect (矩形)数组或数组列表,我可以更新坐标并在屏幕上绘制(使它们移动)。
现在,我有一个名为 Fire 的单独类,其中我在每次迭代时使用其自己的 onDraw() 方法中的新坐标创建一个新矩形。在 View 的 onDraw() 方法的第一次迭代中,我将一个新的 Fire 添加到一个数组列表中。
在 Fire 课上,我有:
public void onDraw(Canvas canvas){
moveF();
Rect r = new Rect(_l,_t,_r,_b);
canvas.drawRect(r, paint);
}
在 View 类中,我有:
protected void onDraw(Canvas canvas) {
int i = 0;
canvas.drawColor(Color.WHITE);
if(i==0){
fires.add(new Fire(20,100,40,120));
i++;
}
for(Fire fire : fires){
fire.onDraw(canvas);
}
}
我摆脱了无意义的代码部分,但这是重要的东西。矩形打印,但是它也打印所有以前的位置,我不明白为什么。我一直在努力解决这个问题,你们可以提供的任何帮助将不胜感激。我能够在java中轻松实现这一点,但是android给我带来了问题。
提前致谢!!!