gpt4 book ai didi

java - Libgdx BitmapFont NullPointerException

转载 作者:行者123 更新时间:2023-11-29 19:14:52 25 4
gpt4 key购买 nike

我使用 Freetype、工具和 box2d for intellej 创建了我的项目,并尝试在 android studio 中运行:

BitmapFont font = new BitmapFont();

它给了我一个空指针异常。我曾尝试手动将字体放入 assests 文件夹,但这没有帮助。我能够成功运行默认项目(红色背景和图片),但从未成功运行该行。

最佳答案

可能的原因可能是您正在初始化本地 BitmapFont 而不是您在 render 方法中使用的全局。

public class MyGdxGame extends Game {

Texture texture;
SpriteBatch spriteBatch;

BitmapFont font;

@Override
public void create () {

BitmapFont font=new BitmapFont(); // You initialise local, global is still Null

texture=new Texture("badlogic.jpg");
spriteBatch=new SpriteBatch();
}

@Override
public void render() {
super.render();

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

spriteBatch.begin();
spriteBatch.draw(texture,100,100);
font.draw(spriteBatch,"HELLO WORLD",100,100); // Now here NPE
spriteBatch.end();
}
}

默认构造函数

BitmapFont font=new BitmapFont();

内部创建两个 FileHandle 一个用于字体文件 com/badlogic/gdx/utils/arial-15.fnt 和另一个图像文件 com/badlogic/gdx/utils/arial-15.png。我不认为,它抛出 NPE 可能是其他一些Exception

关于java - Libgdx BitmapFont NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43959998/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com