Frage

Ich verwende benutzerdefinierte Schriftart in Andengine und wenn der Benutzer auf diese Benutzeroberfläche klickt, muss ich die Farbe meiner Benutzeroberfläche ändern. Hier ist mein Code.

Text exit=new Text(250, 390, this.mPlokFont, "Exit");
exit.setColor(255,0, 0, 255);  
scene.attachChild(exit); 

Aber es funktioniert nicht. Meine Schriftart:

mPlokFont = FontFactory.createFromAsset(this.mPlokFontTexture, this, "Plok.ttf", 16, true, Color.WHITE);

Danke im Voraus.

War es hilfreich?

Lösung

Versuchen Sie, ChangeAbletext anstelle von Text zu verwenden

Andere Tipps

Ich bin mir ziemlich sicher, dass Sie mit diesem Problem konfrontiert sind, da Sie in der Schriftart der Schriftart präpariertes Alpha verwenden. Versuche dies

mFontTexture = new BitmapTextureAtlas(256, 256, TextureOptions.BILINEAR);
mUIFont = new Font(m_FontTexture, Typeface.create(Typeface.DEFAULT, Typeface.BOLD), 32, true, Color.WHITE);

Und es sollte funktionieren. AFAIK, Premultiplied Alpha bedeutet, dass die RGB -Werte in der Textur bereits mit einem Alpha -Wert multipliziert werden. Daher ändert sich das Rufen von .setalpha () nichts (es wird nicht angewendet.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top