Fonts 未渲染LibGDX位图字体

Fonts 未渲染LibGDX位图字体,fonts,libgdx,Fonts,Libgdx,这就是展示方法 @Override public void render(float delta) { Gdx.gl.glClearColor(123, 5, 0, 1); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); stage.act(delta); batch.begin(); black.draw(batch, "some string", Gdx.graphics.getWidth() / 2 - 15,

这就是展示方法

@Override
public void render(float delta) {
    Gdx.gl.glClearColor(123, 5, 0, 1);
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

    stage.act(delta);

    batch.begin();
    black.draw(batch, "some string", Gdx.graphics.getWidth() / 2 - 15, Gdx.graphics.getHeight() / 2 + 100);
    stage.draw();
    //white.setColor(1.0f, 1.0f, 1.0f, 1.0f);

    batch.end();
}

当在按钮上使用字体时,它会被渲染,但当我只想在按钮旁边的屏幕上绘制它时,它不会。是因为舞台吗

我通过使用标签并将其添加到后台,成功地显示了文本

@Override
public void show() {
    batch = new SpriteBatch();

    atlas = new TextureAtlas("data/button.pack");
    skin = new Skin();
    skin.addRegions(atlas);
    white = new BitmapFont(Gdx.files.internal("data/whitefont.fnt"), false);
    black = new BitmapFont(Gdx.files.internal("data/font_1.fnt"), false);
}
所有工作都是通过render方法中的stage.draw()完成的

    LabelStyle ls = new LabelStyle(black, Color.WHITE);
    label = new Label("pishateee", ls);
    label.setX(0);
    label.setY(Gdx.graphics.getHeight() / 2 + 100);
    label.setWidth(width);
    label.setAlignment(Align.center);

    stage.addActor(label);