我有一个HorizontalGroup
我有两个TextButtons。现在我想将这些按钮缩放到它们的一半大小,因为它们太大了,但是我没有找到一个很好的方法来做到这一点,我尝试了一些但不是我想要的东西。
下面是设置它的代码
weaponsButton = new TextButton("Weapons", buttonStyle);
weaponsButton.getLabel().setColor(Color.BLACK);
weaponsButton.pad(10f);
statsButton = new TextButton("Stats", buttonStyle);
statsButton.getLabel().setColor(Color.BLACK);
statsButton.pad(10f);
hGroup = new HorizontalGroup();
hGroup.addActor(weaponsButton);
hGroup.addActor(statsButton);
table = new Table();
table.add(hGroup);
table.setFillParent(true);
table.debug();
stage = new Stage();
stage.addActor(table);
buttonStyle
只是一个TextButtonStyle
NinePatchDrawable
和BitmapFont
。绘制表时,它看起来像这样:
添加hGroup.setScale(0.5f);
看起来像这样:
现在hGroup
未在中心对齐,.aling(Align.center)
在添加hGroup时没有做任何事情。
在添加.width(float)
之后调用hGroup
缩小单元格似乎也没用,因为我不知道缩放hGroup
的确切宽度,它只给出了未缩放的宽度,我发现获得宽度然后乘以缩放因子有点笨重。
即使我这样做也不像我想要的那样。
table.add(hGroup).width(hGroup.getPrefWidth()*0.5f).height(hGroup.getPrefHeight()*0.5f);
看起来像这样:
感谢任何建议
答案 0 :(得分:0)
根据documentation,HorizontalGroup的宽度是其所有子项(按钮)的首选宽度的总和。鉴于此,您有几个选择:
跳过HorizontalGroup,只需将按钮直接添加到表中即可:
Table table = new Table();
table.defaults().uniformX();
table.add(weaponsButton);
table.add(statsButton);