我正在尝试使用表来创建带有排列的按钮和标签的菜单.我正在使用最新的每日构建的libgdx,它改变了Table API(以及其他内容).
这是我的Screen构造函数中的代码:
this.mStage = new Stage();
this.mTable = new Table();
this.mTable.setFillParent(true);
this.mTable.debugTable();
this.mStage.addActor(this.mTable);
// now I add some stuff to the table
// ...
Run Code Online (Sandbox Code Playgroud)
我的resize功能看起来像这样:
this.mStage.setViewport(width, height, true);
this.mTable.setFillParent(true);
this.mTable.invalidate();
Run Code Online (Sandbox Code Playgroud)
我的render功能如下:
System.out.println("Table size is " +
this.mTable.getWidth() + " by " +
this.mTable.getHeight());
this.mStage.draw();
Table.drawDebug();
Run Code Online (Sandbox Code Playgroud)
虽然我的控制台显示正确的大小:
Table size is 480.0 by 640.0
Run Code Online (Sandbox Code Playgroud)
表大小围绕其子项收缩包装,并且不会扩展到480x640的正确大小.
有任何想法吗?
为了别人的利益回答我自己的问题.我向表中添加小部件的方式不正确:
this.mTable.row();
this.mTable.add(button).fillX();
Run Code Online (Sandbox Code Playgroud)
我需要调用以下fillX()方法row():
this.mTable.row().fillX();
this.mTable.add(button);
Run Code Online (Sandbox Code Playgroud)
希望这有助于某人.