Libgdx将一个单元格添加到表中

时间:2017-02-10 08:57:36

标签: java libgdx

I'm trying to add label here

 Label missionTitle = new Label(mission.title, skin);
    Label missionDesct = new Label(mission.desct, skin);
    Label remainDay = new Label(TaskManager.getRemainMissionDay(mission.deadLine) + "day remain", skin);

    missionDesct.setFontScale(width * 1.4f / 1080);
    remainDay.setFontScale(width * 1.2f / 1080);
    missionDesct.setWrap(true);


    Table table = new Table();
    table.debug();
    table.background(new TextureRegionDrawable(new TextureRegion(new Texture("image/imgray.png"))));
    table.add(missionTitle).width(width / 1.1f);
    table.row();
    table.add(missionDesct).width(width / 1.1f);
    table.row();
    table.add(remainDay).width(width/2.3f).left();

为此我添加了这些行;

  Label goldLabel = new Label("30 gold", skin);
    table.add(goldLabel);

但结果是; this

如何在那里添加新细胞? 我试图添加" .width(width / 2);"但它没有用。

    ...
    table.row();
    table.add(remainDay).width(width/2.3f).left();
    Label goldLabel = new Label("30 gold", skin);
    table.add(goldLabel).width(width/2.3f);

2 个答案:

答案 0 :(得分:0)

您可以通过创建一个包含2个标签的表,然后将表添加到容器表中来实现。

示例 -

Table nestedTable = new Table();

nestedTable.add(remainDay).width(THE_WIDTH);
nestedTable.add(goldLabel).width(THE_WIDTH);

mainTable.add(nestedTable);

你可以用它来玩更多来获得理想的结果:)

这门课也可以提供帮助 - HorizontalGroup

答案 1 :(得分:0)

最后,我理解了我的错误。我试图将2个单元格添加到一行。但这会影响另一行的单元格数。我将代码更改为此并解决了;

 Table table = new Table();
    table.background(new TextureRegionDrawable(new TextureRegion(new Texture("image/imgray.png"))));
    table.add(missionTitle).width(width/1.5f).left();
    table.add(new TextButton("!", skin)).height(height/23).width(width / 5).right();
    table.row().fillX();
    table.add(missionDesct).expandX();
    table.add(goldAndExp).right();
    table.row();
    table.add(remainDay).left();

Screenshot

如果有人解决我的语法问题,我会很高兴。