Java 表放置在表中的参与者(LIBGDX) 我有一张主桌 我在表a的第一行有一个新表B 我在表a中有第二行,参与者C包含表D
表B和表D的内容相同。唯一的区别是,表D位于参与者中: 问:为什么演员的位置不正确?它位于表A的左下角(表A=蓝色)。可以手动定位演员C,但我想知道,这里出了什么问题 代码:Java 表放置在表中的参与者(LIBGDX) 我有一张主桌 我在表a的第一行有一个新表B 我在表a中有第二行,参与者C包含表D,java,libgdx,Java,Libgdx,表B和表D的内容相同。唯一的区别是,表D位于参与者中: 问:为什么演员的位置不正确?它位于表A的左下角(表A=蓝色)。可以手动定位演员C,但我想知道,这里出了什么问题 代码: 使用容器而不是组,并检查容器中的代码,以了解仅使用组时的错误 Table outerTable = createOuterTable(font, skin); outerTable.debug(); outerTable.setPosition(200,200); stage.addActor(outerTable);
使用
容器
而不是组
,并检查容器
中的代码,以了解仅使用组
时的错误
Table outerTable = createOuterTable(font, skin);
outerTable.debug();
outerTable.setPosition(200,200);
stage.addActor(outerTable);
private Table createTable_B(BitmapFont font){
Table table = new Table();
Label.LabelStyle labelStyle = new Label.LabelStyle(font, new Color(Color.GREEN));
Label firstlabel = new Label("Table B row 1", labelStyle);
Label secondlabel = new Label("Table B row 2", labelStyle);
table.add(firstlabel);
table.row();
table.add(secondlabel);
table.debug();
return table;
}
private Table createOuterTable(BitmapFont font, Skin skin){
Table table = new Table();
TableActor actor_C = new TableActor(skin);
table.add(createTable_B(font)).pad(20);
table.row();
table.add(actor_C).pad(20);
table.debug();
return table;
}
public class TableActor extends Group {
private final BitmapFont font;
public TableActor(Skin skin) {
font = skin.get(Label.LabelStyle.class).font;
Table table = createInnerTable(font);
addActor(table);
setTransform(false);
}
private Table createInnerTable(BitmapFont font){
Table table = new Table();
Label.LabelStyle labelStyle = new Label.LabelStyle(font, new Color(Color.GREEN));
Label firstlabel = new Label("Table D row 1", labelStyle);
Label secondlabel = new Label("Table D row 2", labelStyle);
table.add(firstlabel);
table.row();
table.add(secondlabel);
table.debug();
return table;
}