你好,下面的代码试图将自定义字体作为标签绘制。每当我用调试模式绘制它时,我会得到一个绿色框,文本应该显示在哪里,但什么都没有出现。我从未使用过自定义字体,只使用过已安装在我电脑上的字体。但是,我确实有" .png"在我的资产文件夹中,所以我不明白为什么它不绘图。
堆栈跟踪中没有错误,下面的图片有助于描述问题。public void show() {
stage = new Stage();
float delta = Gdx.graphics.getDeltaTime();
stage.setDebugAll(true); // Set outlines for Stage elements for easy debug
BitmapFont white = new BitmapFont(Gdx.files.internal("hazey.fnt"), false);
white.setScale(2);
LabelStyle headingStyle = new LabelStyle(white, Color.BLACK);
Label gameoverstring = new Label("game over", headingStyle);
gameoverstring.setPosition(100, 100);
stage.addActor(gameoverstring);
}
// Called every frame so try to put no object creation in it
@Override
public void render(float delta) {
Gdx.gl.glClearColor((float)96/255,(float)96/255,(float)96/255, 1f);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
System.out.println("hey");
stage.act(delta);
stage.draw();
}
答案 0 :(得分:0)
或多或少地逐字使用您的代码,它似乎有效:http://i.imgur.com/V54okhA.png
您的字体可能已被破坏,请尝试:
BitmapFont white = new BitmapFont();
使用默认值并检查它是否有效。如果是,请确保您的字体包含所有必需的字形。也不要缩放字体,它们看起来很可怕。
答案 1 :(得分:0)
听起来它可能与this question
类似你是如何运行你的项目的?如果它来自桌面上的IDE,您是否记得将当前工作目录设置为android / assets?
如果没有,那么它将找不到可能导致您看到的问题的字体文件。
将此作为答案发布的应用btw - 我没有足够的声誉将其作为评论发布。