是否有必要在AndEngine中取消注册EntityModifier?

时间:2014-01-16 13:12:20

标签: android andengine

我使用AndEngine和EntityModifier来动画一些属性,比如许多实体的比例或位置。是否有必要在完成后取消注册EntityModifiers或者它是否已经是默认行为?

如果有必要:使用

是否更好
modifier.setAutoUnregisterWhenFinished(true);

或致电

entity.unregisterEntityModifier(modifier);

提前致谢。

1 个答案:

答案 0 :(得分:1)

有两个布尔值决定修饰符的生命

protected boolean mFinished; private boolean mAutoUnregisterWhenFinished = true;

正如您所见,默认情况下mAutoUnregisterWhenFinished为true,修改器完成后也会设置mFinished。当这两个布尔值变为真时,下面的条件就会破坏修饰符。

if(modifier.isFinished() && modifier.isAutoUnregisterWhenFinished()) {
                this.remove(i);
            }

关于您的问题取决于您的

entity.unregisterEntityModifier(modifier);

当您想要将新修饰符应用于精灵或实体时,使用上面的代码。其中

modifier.setAutoUnregisterWhenFinished(true);

仅在该修改器完成时应用。 例如,如果你想在触摸它时将运动应用于精灵,你可以使用取消注册修改器并应用新的修饰符。

由于