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)
输出为:
我正在尝试使用此代码执行以下操作 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)
输出为: