我正在使用 AndEngine 制作游戏。现在,我有一个ArrayList
填充了几个Sprite
对象。我还有另一个Sprite
我要检查碰撞,然后Sprite
在ArrayList
一小段延迟后删除。但是,我认为我正在处理这个错误,因为我的ArrayList
:
for (int i = 0; i < mIceArray.size(); i++) {
if (this.collidesWith(mIceArray.get(i))) {
final int mIndex = i;
TimerHandler iceRemovalTimer = new TimerHandler(0.1f, new ITimerCallback() {
@Override
public void onTimePassed(final TimerHandler pTimerHandler) {
removeIce(mIceArray.get(mIndex));
mIceArray.remove(mIndex);
unregisterUpdateHandler(pTimerHandler);
}
});
mEngine.registerUpdateHandler(iceRemovalTimer);
}
}
如果有人有建议,他们将不胜感激!谢谢!
编辑:此代码在我的其他 SpriteonManagedUpdate()
方法中