我为需要删除的精灵创建了一个ArrayList,当精灵被触摸时,它们被添加到ArrayList中。
//drawing the enemy that spawns and making them move
public void draw(SpriteBatch batch){
for(Sprite drawEnemy:enemies) {
drawEnemy.draw(batch);
drawEnemy.translateY(deltaTime * movement);
touchInput(drawEnemy.getX(),drawEnemy.getWidth(),drawEnemy);//2nd method
}
}
public void touchInput(float x,float w,Sprite sprite){
float touchX=Gdx.input.getX();
if(Gdx.input.justTouched()){
if(touchX > x && touchX < x+w ){
removeEne.add(sprite);// Adding the current Sprite to the array list when touched
} //removeEne is my ArrayList
}
}
答案 0 :(得分:1)
Iterator<Sprite> it = removeEne.iterator();
while (it.hasNext()) {
it.remove();
}
答案 1 :(得分:0)
我不太确定你要问的是什么,但是如果你想从ArrayList中删除sprite,你可以使用ArrayList.remove方法。你需要知道你想删除的精灵的索引,就像你在访问任何数组时需要这些信息一样。