【问题标题】:libgdx - exception while creating selectboxlibgdx - 创建选择框时出现异常
【发布时间】:2013-11-18 13:36:01
【问题描述】:

在 libgdx 上创建选择框时遇到问题。

Skin.add("button", new Texture("data/menu/button.png"));
[...]    
SelectBoxStyle selectboxstyle = new SelectBoxStyle();

selectboxstyle.font = new BitmapFont(Gdx.files.internal("data/fonts/menufont.fnt"), Gdx.files.internal("data/fonts/menufont.png"), false);`

selectboxstyle.background = Skin.getDrawable("button");

SelectBox dropdown = new SelectBox(new String[] {"item1", "item2"}, selectboxstyle);

最后一行抛出异常:

线程“LWJGL 应用程序”中的异常 java.lang.NullPointerException 在 com.badlogic.gdx.scenes.scene2d.ui.SelectBox.setItems(SelectBox.java:140) 在 com.badlogic.gdx.scenes.scene2d.ui.SelectBox.(SelectBox.java:71) 在 com.me.Terminum.Screens.MainMenu.ShowVideo(MainMenu.java:171) 在 com.me.Terminum.Screens.MainMenu.show(MainMenu.java:121) 在 com.badlogic.gdx.Game.setScreen(Game.java:62) 在 com.me.Terminum.Screens.SplashScreen.show(SplashScreen.java:88) 在 com.badlogic.gdx.Game.setScreen(Game.java:62) 在 com.me.Terminum.App.create(App.java:13) 在 com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:136) 在 com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:114)

我在 libgdx 0.9.8 和 0.9.9 上检查了它。我做错了什么?

【问题讨论】:

  • 使用 0.9.9 并使用 Skin 构造函数而不是 SelectBoxStyle 构造函数,这对我来说很好。但是 Skin 构造函数实际上委托给具有 SelectBoxStyle 的构造函数...

标签: java nullpointerexception libgdx


【解决方案1】:

我找到了答案。 必须填充未标记为可选的所有内容。此外,必须填充 ScrollPaneStyle.background(即使它被标记为可选)。没有这个,libgdx 给我抛出了一个异常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-25
    • 2016-10-02
    • 2015-03-20
    相关资源
    最近更新 更多