libgdx表等于按钮

时间:2016-10-17 03:20:45

标签: java user-interface button libgdx

我试图在屏幕上的任何屏幕尺寸(宽度)上获得相等的空格。我在舞台上使用Libgdx表。我认为我的逻辑是在正确的轨道上,但它没有返回任何接近我想要的东西..大多数按钮都在屏幕外。 (我总共有5个按钮)

    int width = Gdx.graphics.getWidth();
    int spacing = width / 5;
    System.out.println(width);
    System.out.println(spacing);

    //BOTTOM TABLE
    tableBottom = new Table(skin);
    stage.addActor(tableBottom);
    tableBottom.setBounds(0,0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
    tableBottom.setFillParent(true);
    tableBottom.columnDefaults(1).width(spacing);
    tableBottom.add(inventoryButton).size(144,160).center();
    tableBottom.add(assignButton).size(148,180).center();
    tableBottom.add(shopButton).size(130,152).center();
    tableBottom.add(collectButton).size(182,198).center();
    tableBottom.add(fightButton).size(162,178).center();

如所要求的图片:

这就是上面代码的作用!并且根据每个屏幕尺寸不确定它是不同的。

what is happening

这就是我想要的样子。在每个大小的屏幕上相等的间距和占据整个底部..显然一个更大的屏幕,他们将不会在一起,但这很好!谢谢你一直在努力。

what I want it to be doing

1 个答案:

答案 0 :(得分:0)

在水平方向上获得相等的间距变化

tableBottom.add(inventoryButton).size(144,160).center();
tableBottom.add(assignButton).size(148,180).center();
tableBottom.add(shopButton).size(130,152).center();
tableBottom.add(collectButton).size(182,198).center();
tableBottom.add(fightButton).size(162,178).center();

tableBottom.add(inventoryButton).size(144,160).expandX();
tableBottom.add(assignButton).size(148,180).expandX();
tableBottom.add(shopButton).size(130,152).expandX();
tableBottom.add(collectButton).size(182,198).expandX();
tableBottom.add(fightButton).size(162,178).expandX();