LibGDX Scene2d UI: Table 内部 table 布局问题

LibGDX Scene2d UI: Table inside table layout problems

我正在尝试使用此代码执行以下操作 layout(宽度和高度仅用于调试,理想情况下我会让两个 table 都具有宽度的 50% . 超类也是 Table)

left().top()
add(Label("Player name", UI_SKIN)).center().expandX()
row()
add(Table()).width(50f).height(50f)
add(Table()).width(200f).height(50f)
setDebug(true, true)

这导致 this,出于某种原因,table 似乎没有在他们自己的行中,而是最后一个 table 将标签推到左边.如果我只添加一个 table 它工作正常(无法添加另一个屏幕截图,因为我没有足够的代表...)。

任何帮助将不胜感激,我现在​​ 运行 没有想法。

你可以这样做

stage= Stage()
Gdx.input.setInputProcessor(stage)

var skin= Skin(Gdx.files.internal("skin/glassy-ui.json"))

var table= Table()
table.defaults().pad(10F)
table.setFillParent(true)

var label=Label("PLAYER NAME",skin)
label.setAlignment(Align.center);

var first_table=Table()
first_table.setDebug(true)
first_table.add(Label("FIRST TABLE",skin))

val second_table=Table()
second_table.add(Label("SECOND TABLE",skin))

table.add(label).colspan(2).fillX()
table.row();
table.add(first_table).expand()
table.add(second_table).expand()

stage.addActor(table)
stage.setDebugAll(true)

输出为: