java - 无法使用 libgdx 创建正确的表

标签 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);

有什么想法吗?

最佳答案

您需要的是 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);

关于java - 无法使用 libgdx 创建正确的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22877837/

相关文章:

java - Android 以编程方式停止 toast 通知?

滚动视差背景,在 libgdx 中无限重复

java - 在 Java 中向字符串行为添加转义字符

数字系统代码中的Java数字格式异常错误

java - 如何将(添加)邻近警报的 Intent 传递到广播接收器中?

尝试播放某些流时,Android MediaPlayer 返回错误 (1, -1004)

java - Libgdx某些字体字母不出现

java - 如何在 LibGDX 中的按钮上切换 "over"样式?

java.lang.UnsatisfiedLinkError : Unable to load library

java - 如何在不使用 “Local variable x defined in an enclosing scope must be final…”的情况下使用数组索引