如何在libgdx中显示分数或时间之类的文本?

如何在libgdx中显示分数或时间之类的文本?,libgdx,Libgdx,我使用了阶段法。但它不起作用。我是游戏开发新手。请帮帮我 您可以使用标签,如果您以这种方式使用: public class GdxText extends ApplicationAdapter { Stage stage; Label scoreLabel; @Override public void create() { stage=new Stage(); Label.LabelStyle labelStyle=new

我使用了阶段法。但它不起作用。我是游戏开发新手。请帮帮我

您可以使用
标签
,如果您以这种方式使用:

public class GdxText extends ApplicationAdapter {

    Stage stage;
    Label scoreLabel;

    @Override
    public void create() {

        stage=new Stage();

        Label.LabelStyle labelStyle=new Label.LabelStyle(new BitmapFont(), Color.RED);
        scoreLabel=new Label(String.format("%03d",0),labelStyle);

        Table table =new Table();
        table.defaults().pad(2);

        table.add(new Label("SCORE :",labelStyle));
        table.add(scoreLabel);
        table.setPosition(200,300);

        stage.addActor(table);
    }

    @Override
    public void render() {

        Gdx.gl.glClearColor(1,1,1,1);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

        stage.draw();
        stage.act();
    }

    public void increase(){
        CharSequence value=scoreLabel.getText();
        int v= Integer.valueOf(value.toString());
        scoreLabel.setText(String.format("%03d", ++v));
    }

    @Override
    public void resize(int width, int height) {
        stage.getViewport().update(width,height,true);
    }

    @Override
    public void dispose() {
        stage.dispose();
    }
}
我使用默认字体进行此测试,您可以使用自己的字体。每当您想增加score调用
increase()
方法的值时,它会将您的分数增加一

输出:


使用标签。把它加入你的舞台。请继续往下读,谢谢。我以前试过这个技巧。但现在我明白为什么那不起作用了。我把这两行代码(stage.draw();stage.act();)放在sb.begin()和sb.end()之间。但是把这些行放在sb.end()之后是可行的。当你调用
stage.draw()
时,你需要一次使用一个批,一个批
begin()
在内部调用,一个批
end()
在调用之后,所以把批分开。