我是 libgdx 的新手,我正在尝试在屏幕上显示一些文本。
我看过几个教程,他们都说我应该BitmapFont
不带参数启动它,然后它将使用默认字体。但在我的安卓设备上,它只显示这些黑色矩形:
这是我的代码:
public class GameOverScreen implements Screen {
private JumpGame game;
private OrthographicCamera cam;
private BitmapFont gameOverFont;
private Label.LabelStyle labelStyle;
private Label label;
public GameOverScreen(JumpGame game) {
this.game = game;
cam = new OrthographicCamera();
gameOverFont = new BitmapFont();
labelStyle = new Label.LabelStyle(gameOverFont, Color.BLACK);
label = new Label("Game Over", labelStyle);
}
@Override
public void show() {
cam.setToOrtho(false, game.getWidth() / 4, game.getHeight() / 4);
game.batch.setProjectionMatrix(cam.combined);
}
@Override
public void render(float delta) {
Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
game.batch.begin();
label.draw(game.batch, 1);
game.batch.end();
}
@Override
public void resize(int width, int height) {
}
@Override
public void pause() {
}
@Override
public void resume() {
}
@Override
public void hide() {
}
@Override
public void dispose() {
}
}
编辑:
好的,所以我正在使用第二个线程中的文本启动屏幕。当我“正常”启动它时,它工作正常。有人可以解释为什么会这样,如果我仍然想从线程启动它,如何解决它?