2017-02-10 46 views
0

I'm trying to add label hereLibgdx添加小區到表

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); 
+0

你可以試試這個table.add(remainDay,goldLabel); ? – Sneh

+0

不幸的是,它沒有奏效。 –

回答

0

您可以通過創建一個帶有2個標籤的表,然後將該表添加到容器表中來實現。

示例 -

Table nestedTable = new Table(); 

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

mainTable.add(nestedTable); 

你可以用這個各地更多的發揮得到期望的結果:)

此類還可以幫助 - HorizontalGroup

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

我會很高興,如果有人解決我的語法問題。