1
내 게임의 도움말 화면에서 LibGDX 라벨을 화면에 그려하려고하는데 JVM에서 오류가 발생하지 않지만 라벨 텍스트가 그려지지 않습니다. LibGDX 라벨을 그리지 않음
이
내 HelpMenu 클래스입니다 :package metrovelox.screens;
//imports...
public class HelpMenu extends Screen {
private Stage stage;
public HelpMenu(Game game, String name) {
super(game, name);
}
@Override
public void init() {
Texture.setEnforcePotImages(false);
stage = new Stage();
Group background = new Group();
Group foreground = new Group();
background.setBounds(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
foreground.setBounds(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
stage.addActor(background);
stage.addActor(foreground);
background.addActor(ResourceLoader.loadImage("ui/Main Menu Background.jpg"));
TextButton back = new TextButton("back", GuiSkinRegistry.retrieve("Simple Buttons"));
back.setPosition(Utils.getScreenCenter().x - 186, Utils.getScreenCenter().y - 200);
Label text = new Label("Hello", GuiSkinRegistry.retrieve("Simple Label"));
text.setPosition(Utils.getScreenCenter().x, Utils.getScreenCenter().y);
back.addListener(new ClickListener(Buttons.LEFT) {
@Override
public void clicked(InputEvent event, float x, float y) {
getGame().setScreen(getGame().getScreen("Main Menu"));
}
});
foreground.addActor(back);
foreground.addActor(text);
Gdx.input.setInputProcessor(stage);
}
@Override
public void render(float delta) {
super.render(delta);
stage.act(delta);
stage.draw();
}
@Override
public void dispose() {
super.dispose();
stage.dispose();
}
}
그리고 이것은 내 주요 게임 클래스입니다 : 이것은의 스크린 샷이
{
com.badlogic.gdx.graphics.Color: {
white: { hex: "ffffff" }
},
com.badlogic.gdx.graphics.g2d.BitmapFont: {
impact: {file: "../fonts/impact.fnt"}
},
com.badlogic.gdx.scenes.scene2d.ui.Label$LabelStyle: {
default: {
font: impact, fontColor: white
}
}
}
입니다 : 이것은 내 스킨 파일이
package metrovelox.core;
import metrovelox.screens.HelpMenu;
import metrovelox.screens.MainMenu;
public class Metrovelox extends Game {
@Override
public void init() {
//Register skins, screens etc...
GuiSkinRegistry.register("Simple Buttons", ResourceLoader.loadSkin("MainMenu", ResourceLoader.loadTextureAtlas("ui/simple_buttons")));
GuiSkinRegistry.register("Simple Label", ResourceLoader.loadSkin("HelpMenu"));
addScreen(new MainMenu(this, "Main Menu"));
addScreen(new HelpMenu(this, "Help Menu"));
setScreen(getScreen("Main Menu"));
}
}
입니다 도움말 화면 :
보시다시피 라벨이 전혀 그려지지 않습니다. 모든 파일이 올바른 위치에 있으며 모든 코드가 LibGDX 문서에서 수집 할 수있는 정확한 것으로 보이지만 레이블은 그려지지 않습니다.
이 문제에 대한 해결책을 찾았습니까? 비슷한 문제가있는 것 같습니다. = [ – user959631