我无法在AndEngine中更改HUD的Alpha属性。可能吗?

时间:2015-10-16 22:13:42

标签: andengine alpha alphablending

我正在尝试更改HUD的alpha值,但它没有改变。我已尝试使用AlphaModifier并使用方法.setAlpha()进行更改,但没有结果。我可以看到,HUD实体没有setBlendingFunction()方法。

这就是我现在要做的事情:

this.mHud = new HUD() {
        @Override
        protected void onManagedUpdate(float pSecondsElapsed) {
            super.onManagedUpdate(pSecondsElapsed);
            if(flag) {
                while (this.getAlpha() > 0) {
                    this.set(this.getAlpha() - (pSecondsElapsed / 1.5f));
                }
            } else {
                while (this.getAlpha() < 1) {
                    this.setAlpha(this.getAlpha() + (pSecondsElapsed / 1.5f));
                }
            }
        }
    };

“flag”变量初始化为false,按下按钮时更改。

我也试过这个:

 private static final IEntitiyModifier mToTransparentModifier = new AlphaModifier(1, 1, 0);
private static final IEntitiyModifier mToOpaqueModifier = new AlphaModifier(1, 0, 1);
this.mToTransparentModifier.setAutoUnregisterWhenFinished(true);
this.mToOpaqueModifier.setAutoUnregisterWhenFinished(true);

if(flag) {
    this.mHud.registerEntityModifier(this.mToTransparentModifier);
}else {
    this.mHud.registerEntityModifier(this.mToOpaqueModifier);
}

任何帮助将不胜感激。感谢

0 个答案:

没有答案