Android AndEngine меняет текст динамически - PullRequest
1 голос
/ 10 января 2012

Я использую пользовательский шрифт в andengine, и когда пользователь щелкает по этому интерфейсу, мне нужно изменить цвет моего интерфейса. Вот мой код.

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

, но он не работает.Мой шрифт:

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

Заранее спасибо.

Ответы [ 2 ]

4 голосов
/ 12 января 2012

Я почти уверен, что вы столкнулись с этой проблемой, потому что вы используете предварительно умноженную альфа в текстуре шрифта.Попробуйте это

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

, и оно должно работать.AFAIK, предварительно умноженное альфа означает, что значения RGB в текстуре уже умножены на альфа-значение, поэтому вызов .setAlpha () ничего не изменит (он не будет применен.

3 голосов
/ 10 января 2012

Попробуйте использовать ChangeableText вместо Text

...