嗨,每次在我的游戏中破坏某些东西后,我都会创建一个爆炸动画的新对象,该对象是通过在我的表面视图线程中使用线程类来完成的。在短时间内摧毁多艘船后,应用退出活动。为什么是这样?
explosion ex = new explosion(x,y);
ex.start();
和
class explosion extends Thread implements Runnable{
private long startTime;
private int num = 0;
private int x;
private int y;
public explosion(int mx, int my){
x = mx;
y = my;
startTime = System.currentTimeMillis();
}
public void run(){
while(num < 3){
long millis = System.currentTimeMillis();
canvas.drawBitmap(explosions.get(num),x,y,null);
if(millis - startTime > 50){
startTime = System.currentTimeMillis();
num++;
Log.d("Explosion","Animate");
}
}
Log.d("Explosion","End Thread");
}
};