我是LibGDX的新手,而且我慢慢服用。當我運行應用程序時,它只是因爲錯誤而關閉。但我不確定問題是什麼。這是我有的按鈕的代碼。LibGDX - 如何讓我的按鈕工作?
@Override
public void show() {
// Viewport Camera
camera = new PerspectiveCamera();
viewport = new ExtendViewport(800, 480, camera);
stage = new Stage(new ExtendViewport(800, 840));
Gdx.input.setInputProcessor(stage);
skin = new Skin(atlas);
atlas = new TextureAtlas(Gdx.files.internal("ui/button.pack"));
table = new Table(skin);
table.setBounds(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
textButtonStyle = new TextButtonStyle();
textButtonStyle.up = skin.getDrawable("button.up");
textButtonStyle.down = skin.getDrawable("button.down");
buttonPlay = new TextButton("Play", textButtonStyle);
buttonPlay.setWidth((float) (Gdx.graphics.getWidth()/2.5));
buttonPlay.setHeight(Gdx.graphics.getHeight()/6);
buttonPlay.setPosition((Gdx.graphics.getWidth()/2-buttonPlay.getWidth()/2), (float) (Gdx.graphics.getHeight()-(buttonPlay.getHeight())*2.5));
buttonPlay.toFront();
stage.addActor(buttonPlay);
table.debug();
table.add(buttonPlay);
}
錯誤:
Exception in thread "LWJGL Application" java.lang.NullPointerException
at com.badlogic.gdx.scenes.scene2d.ui.Skin.addRegions(Skin.java:102)
at com.badlogic.gdx.scenes.scene2d.ui.Skin.<init>(Skin.java:88)
at com.badlogic.gdx.screens.Menu.show(Menu.java:83)
at com.badlogic.gdx.Game.setScreen(Game.java:61)
at com.badlogic.gdx.screens.Splash.render(Splash.java:38)
at com.badlogic.gdx.Game.render(Game.java:46)
at com.dakotapederson.slingshotsteve.SlingshotSteve.render(SlingshotSteve.java:29)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:206)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:114)
75行是顯示()方法是。
什麼錯誤?請提供日誌。 – Veljko 2014-09-13 19:48:42
他們你走了,我用表更新代碼,看看是否會修復東西 – Dakota 2014-09-13 19:54:12