无法使用libgdx创建正确的表

时间:2014-04-05 07:17:20

标签: java android libgdx

我正在尝试创建一个像这样的表:

| xxxxxxxxx |
| x | x | x |
....

并且我已经编写了这个代码来做到这一点,但它完全错了,并没有像我那样出现......

    Label label = new Label("ORTHO", style);
    label.setWrap(true);
    label.setWidth(100);

    Label label1 = new Label("A", style);
    label1.setWrap(true);
    label1.setWidth(100);

    Label label2 = new Label("A", style);
    label2.setWrap(true);
    label2.setWidth(100);

    table.row();
    table.add(new Label(label.getText(), style)).width(Gdx.graphics.getWidth()-100);

    table.row();
    table.add(new Label(label1.getText(), style)).width(50).align(Align.left);
    table.add(new Label(label2.getText(), style)).width(50).align(Align.left);

    table.debug();
    stage.addActor(table);

任何想法?

1 个答案:

答案 0 :(得分:2)

您需要的是colspan

colspan(int n)使项目的添加跨越n列。

所以你必须在第一个标签的add方法调用上应用它。


此外,添加时不要创建新标签。由于您已经实例化了它们,因此可以在添加时使用它们。 (另请不要使用setWidth,因为您在添加时指定宽度。)

// Create
Label label = new Label("ORTHO", style);
label.setWrap(true);

Label label1 = new Label("A", style);
label1.setWrap(true);

Label label2 = new Label("A", style);
label2.setWrap(true);

// Add
table.add(label).width(100).colspan(2);
table.row();

table.add(label1).width(50).align(Align.left);
table.add(label2).width(50).align(Align.left);