更新了 libgdx 版本 1.7.1-SNAPSHOT 的答案:
最简单的方法是使用 libgdx 中的 TextButton 类。默认情况下,文本按钮中的文本居中。这仍然有效!
更新的示例:
final BitmapFont font = new BitmapFont();
final String text = "Test";
final GlyphLayout layout = new GlyphLayout(font, text);
// or for non final texts: layout.setText(font, text);
final float fontX = objectX + (objectWidth - layout.width) / 2;
final float fontY = objectY + (objectHeight + layout.height) / 2;
font.draw(batch, layout, fontX, fontY);
过时的示例:
这不再有效!
如果您不想使用它,则可以通过以下方式获取字体宽度和高度:
font.getBounds("Test text");
所以你可以做这样的事情:
String fontText = "";
fontX = buttonX + buttonWidth/2 - font.getBounds(fontText).width/2;
fontY = buttonY + buttonHeight/2 + font.getBounds(fontText).height/2;