我对LibGDX有点陌生。我只是在学习绳索。尝试使基本文本按钮在屏幕上以合理的大小显示。专门在Android IDE(AIDE(上工作。仅使用默认皮肤和其他内容,我尝试设置宽度和高度以及setScale((,但命令中似乎只有文本大小增加。我做错了什么?
https://oi1161.photobucket.com/albums/q501/StudioGilliam/Screenshot_20190423-184819_LibGDXButtonsTest.jpg
public class MyGdxGame implements ApplicationListener
{
private Stage stage;
private Table table;
private TextButton btn;
@Override
public void create()
{
stage = new Stage(new ScreenViewport());
Gdx.input.setInputProcessor(stage);
table = new Table();
table.setBounds(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
TextButton.TextButtonStyle style = new TextButton.TextButtonStyle();
style.font = new BitmapFont();
btn = new TextButton("Button", style);
btn.pad(20);
btn.setTransform(true);
btn.setScale(5.0f);
btn.setTouchable(Touchable.enabled);
table.add(btn);
table.debug();
stage.addActor(table);
}
@Override
public void render()
{
Gdx.gl.glClearColor(0, 1, 1, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
stage.act();
stage.draw();
}
@Override
public void dispose()
{
stage.dispose();
}
@Override
public void resize(int width, int height){}
@Override
public void pause(){}
@Override
public void resume(){}
}
编辑:我意识到像阶段和表这样的父对象控制着它们子对象的属性,所以我添加了:
table.add(btn).width(300).height(100);
现在它看起来更好,但文本偏离中心......
https://oi1161.photobucket.com/albums/q501/StudioGilliam/Screenshot_20190423-191104_LibGDXButtonsTest.jpg
在 Textbutton 上,您应该使用 setFontScale(( 和 pack(( 将按钮的大小调整为字体大小。
但是,为了支持不同的屏幕尺寸而无需任何自己的编码,请考虑使用 FitViewport/ExtendViewport