Как создать кнопку в libgdx с помощью pack?
Я пытался создать кнопку в libgdx, но у меня возникла путаница с pack и json файл. В результате возникает ошибка при чтении json файла.
Мой код:
stage = new Stage();
Gdx.input.setInputProcessor(stage);
Skin skin = new Skin();
TextureAtlas buttonAtlas = new TextureAtlas(Gdx.files.internal("buttons/buttons.atlas"));
skin.addRegions(buttonAtlas);
skin.load(Gdx.files.internal("skin.json"));
TextButton button = new TextButton("Button1", skin, "default");
stage.addActor(button);
button.addListener(new ChangeListener() {
@Override
public void changed(ChangeEvent event, Actor actor) {
System.out.println("Click");
}
});
button.setX(250);
button.setY(250);
button.setWidth(100);
button.setHeight(100);
stage.addActor(button);
Это мой atlas, я создавал его через GDXTexturePacker
Итог libgdx очень запутанный
Ответы (2 шт):
Думаю у вас какие-то проблемы в JSON файле, хотя не уверен какие именно. Вообщем это странно. Не понимаю зачем нужны все эти костыли с разными файлами в этом libgdx, неужели нельзя было сделать как в JavaFX.
Libgdx получился довольно костыльным, как я понимаю, просто смешны эти методы с dispose. В Java прямое управление памятью это вообще бросается в глаза. Мой совет не используйте этот огромный костыль. Лучше используйте, хотя бы lwjgl, где своими надстройками не испортили все.

