我正在使用和引擎进行游戏,现在已经使用HUD来显示分数,剩余时间和等级我的问题是我想使用两种不同颜色的文本,如Level 1/10 所以Level / 10应该是黑色的,1应该是红色的,有没有办法做到这一点,我在下面使用
vertexBufferObjectManager = this.getVertexBufferObjectManager();
back = new Sprite((CAMERA_WIDTH - mBannerTextureRegion.getWidth()) / 2,
0, this.mBannerTextureRegion, vertexBufferObjectManager);
topBannar = new HUD();
reset = new ButtonSprite(30, 5, this.mResetTextureRegion,
this.mResetPressedTextureRegion, this.mResetTextureRegion,
vertexBufferObjectManager, this);
topBannar.registerTouchArea(reset);
back.attachChild(reset);
levelText = new Text(210, 5, this.mFont, "Level " + stage + "/10",
new TextOptions(HorizontalAlign.CENTER),
vertexBufferObjectManager);
back.attachChild(levelText);
scoreText = new Text(375, 5, this.mFont, "Score : " + totalScore,
new TextOptions(HorizontalAlign.CENTER),
vertexBufferObjectManager);
back.attachChild(scoreText);
timerWatch = new Text(535, 5, this.mFont, "Time:", 100,
new TextOptions(HorizontalAlign.CENTER),
vertexBufferObjectManager);
timeHandler = new Timer(1f, StartActivity.this);
timerWatch.registerUpdateHandler(timeHandler);
back.attachChild(timerWatch);
topBannar.attachChild(back);
camera.setHUD(topBannar);
答案 0 :(得分:0)
我不知道andengine
但是如果你的问题是关于spannable
这里有一个小例子。
Spannable spannableString = new SpannableString("some string");
//the following code will put the word "string" in bold with yellow background
spannableString.setSpan(new BackgroundColorSpan(Color.YELLOW),
6, spannableString.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
spannableString.setSpan(new StyleSpan(android.graphics.Typeface.BOLD),
6, spannableString.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
基本上它会创建一个spannable
字符串,然后使用setSpan()
设置一些自定义属性。
我不确定这是否会回答你是否应该删除它的问题,因为它不在主题
答案 1 :(得分:0)
嗨,经过大量搜索,我发现只有这样做的方法“在另一个之前使用两个文本对象并设置你想要的颜色。