這是我的MenuScreen.java。這是一個可以從主類設置屏幕的類,並將顯示一個開始菜單。libgdx TextButton不能用於json
package com.game.screens;
import com.badlogic.gdx.Game;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.Screen;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.g2d.BitmapFont;
import com.badlogic.gdx.graphics.g2d.TextureAtlas;
import com.badlogic.gdx.scenes.scene2d.Stage;
import com.badlogic.gdx.scenes.scene2d.ui.Skin;
import com.badlogic.gdx.scenes.scene2d.ui.Table;
import com.badlogic.gdx.scenes.scene2d.ui.TextButton;
import com.badlogic.gdx.scenes.scene2d.ui.TextField;
public class MenuScreen implements Screen
{
private Stage stage = new Stage();
private Table table = new Table();
private Skin skin = new Skin(Gdx.files.internal("skin.json"),
new TextureAtlas(Gdx.files.internal("testingStuff.pack")));
private TextButton buttonPlay = new TextButton("Play", skin),
buttonExit = new TextButton("Exit", skin);
@Override
public void show()
{
table.add(buttonPlay).row();
table.add(buttonExit).row();
table.setFillParent(true);
stage.addActor(table);
Gdx.input.setInputProcessor(stage);
}
@Override
public void render(float delta)
{
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
stage.act();
stage.draw();
}
@Override
public void resize(int width, int height)
{
}
@Override
public void pause()
{
}
@Override
public void resume()
{
}
@Override
public void hide()
{
dispose();
}
@Override
public void dispose()
{
stage.dispose();
skin.dispose();
}
}
我想一個簡單的TEXT按鈕添加到我的應用程序,但每當我運行它,我得到這個錯誤涉及skin.json文件。
Exception in thread "LWJGL Application" com.badlogic.gdx.utils.SerializationException: Error reading file: skin.json
at com.badlogic.gdx.scenes.scene2d.ui.Skin.load(Skin.java:97)
at com.badlogic.gdx.scenes.scene2d.ui.Skin.<init>(Skin.java:82)
at com.game.screens.MenuScreen.<init>(MenuScreen.java:21)
at com.mygdx.game.MyGdxGame.create(MyGdxGame.java:22)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:143)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120)
Caused by: com.badlogic.gdx.utils.SerializationException: Error reading file: skin.json
at com.badlogic.gdx.utils.Json.fromJson(Json.java:683)
at com.badlogic.gdx.scenes.scene2d.ui.Skin.load(Skin.java:95)
... 5 more
Caused by: com.badlogic.gdx.utils.SerializationException: Error parsing file: skin.json
at com.badlogic.gdx.utils.JsonReader.parse(JsonReader.java:77)
at com.badlogic.gdx.utils.Json.fromJson(Json.java:681)
... 6 more
Caused by: com.badlogic.gdx.utils.SerializationException: Error parsing JSON on line 1 near: : {
"white": { "file": "skinTest.fnt" }
},
"com.badlogic.gdx.scenes.scene2d.ui.TextButton$TextButtonStyle": {
"default": { "font": white }
}
at com.badlogic.gdx.utils.JsonReader.parse(JsonReader.java:547)
at com.badlogic.gdx.utils.JsonReader.parse(JsonReader.java:55)
at com.badlogic.gdx.utils.JsonReader.parse(JsonReader.java:75)
... 7 more
這是報價,謝謝! – mcjcloud