LibGDX在创建按钮时崩溃
我是LibGdx的新手。我已经为java编程一年了,但今天我在LibGdx中遇到了一个按钮错误 是什么引起的,我怎样才能修复它LibGDX在创建按钮时崩溃,libgdx,crash,Libgdx,Crash,我是LibGdx的新手。我已经为java编程一年了,但今天我在LibGdx中遇到了一个按钮错误 是什么引起的,我怎样才能修复它 @Override public void render(float delta) { Gdx.gl.glClearColor(1, 1, 1, 1); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); batch.begin();
@Override
public void render(float delta) {
Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.begin();
background.draw(batch);
batch.end();
}
@Override
public void show() {
batch = new SpriteBatch();
// THE ERROR IS HERE|
// V
// BUTTON
Skin skinLibgdx = new Skin();
TextureAtlas ta = new TextureAtlas(Gdx.files.internal("Button.pack"));
skinLibgdx.addRegions(ta);
Button button = new Button(skinLibgdx);
button.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
// TODO Auto-generated method stub
System.out.println("ABC");
}
});
}
...
}
错误:
Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: No com.badlogic.gdx.scenes.scene2d.ui.Button$ButtonStyle registered with name: default
at com.badlogic.gdx.scenes.scene2d.ui.Skin.get(Skin.java:145)
at com.badlogic.gdx.scenes.scene2d.ui.Skin.get(Skin.java:132)
at com.badlogic.gdx.scenes.scene2d.ui.Button.<init>(Button.java:50)
at com.me.game.screen.MainMenu.show(MainMenu.java:53)
at com.badlogic.gdx.Game.setScreen(Game.java:61)
at com.me.game.screen.Splash$1.onEvent(Splash.java:64)
at aurelienribon.tweenengine.BaseTween.callCallback(BaseTween.java:380)
at aurelienribon.tweenengine.BaseTween.updateStep(BaseTween.java:521)
at aurelienribon.tweenengine.BaseTween.update(BaseTween.java:424)
at aurelienribon.tweenengine.TweenManager.update(TweenManager.java:166)
at com.me.game.screen.Splash.render(Splash.java:35)
at com.badlogic.gdx.Game.render(Game.java:46)
at com.me.game.MainGame.render(MainGame.java:16)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:207)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:114)
线程“LWJGL应用程序”com.badlogic.gdx.utils.GdxRuntimeException中的异常:没有使用名称注册的com.badlogic.gdx.scenes.scene2d.ui.Button$ButtonStyle:默认值
位于com.badlogic.gdx.scenes.scene2d.ui.Skin.get(Skin.java:145)
位于com.badlogic.gdx.scenes.scene2d.ui.Skin.get(Skin.java:132)
位于com.badlogic.gdx.scenes.scene2d.ui.Button.(Button.java:50)
在com.me.game.screen.MainMenu.show上(MainMenu.java:53)
在com.badlogic.gdx.Game.setScreen上(Game.java:61)
在com.me.game.screen.Splash$1.onEvent(Splash.java:64)
在aurelianribon.tweenegine.BaseTween.callCallback(BaseTween.java:380)
在aurelianribon.tweenegine.BaseTween.updateStep(BaseTween.java:521)
更新(BaseTween.java:424)
更新(TweenManager.java:166)
位于com.me.game.screen.Splash.render(Splash.java:35)
位于com.badlogic.gdx.Game.render(Game.java:46)
位于com.me.game.MainGame.render(MainGame.java:16)
位于com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:207)
位于com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:114)
仅地图册还不够按钮使用。您必须为按钮提供默认样式。这可以直接在皮肤上完成,也可以通过JSON文件加载。查看详细信息
检查libgdx的测试,其中包含一个相当完整的示例()
e、 g
然后加载它,例如
Skin skinLibgdx = new Skin(Gdx.files.internal("data/uiskin.json"))
请看一个完整的示例:您应该发布您得到的错误。@MarcoDesignerMC我想这会告诉您您没有任何区域纹理作为默认名称,以创建检查,确定这是code@MarcoDesignerMC,这是一个描述“风格”的好系列并设置您的皮肤以适应任何需要样式的对象——事实上,这对于更加熟悉LibGDX是非常有益的
Skin skinLibgdx = new Skin(Gdx.files.internal("data/uiskin.json"))