我对 Libgdx 中的表有另一个问题。我想使用它创建一个游戏板,并为用户提供从该板( table )添加/删除元素的可能性。所以首先我想知道如何初始化该表,以便它已经有字段但不可见字段(这样就可以获取该字段的位置并将新元素放在那里)。所以这是我的第 2 个问题:
- 如何创建那些不可见的字段(所有字段都有固定的静态大小)?
- 如何获取该字段中的位置和变化元素(actor)?
希望有人能帮助我。
最佳答案
- 您可以通过向表格中添加一个单元格并设置单元格的大小来创建它们。
- 然后您可以向该单元格添加一个不可见的按钮,如果单击该按钮,您可以将其删除并添加一个新元素。
这里是一些示例代码:
// uiskin from libgdx tests
skin = new Skin(Gdx.files.internal("uiskin.json"));
table = new Table();
// invisible button style
final ButtonStyle bStyle = new ButtonStyle();
int colNum = 10, rowNum = 10;
for (int row = 0; row < rowNum; row++)
{
for (int col = 0; col < colNum; col++)
{
final Button l = new Button(bStyle);
l.addListener(new ClickListener()
{
@Override
public void clicked(InputEvent event, float x, float y)
{
Cell<Button> cell = table.getCell(l);
cell.clearActor();
cell.setActor(new Label("test", skin));
}
});
table.add(l).size(100, 100);
}
table.row();
}
stage = new Stage();
table.setFillParent(true);
stage.addActor(table);
Gdx.input.setInputProcessor(stage);
皮肤文件可以在这里下载:https://github.com/libgdx/libgdx/tree/master/tests/gdx-tests-android/assets/data
您需要 uiskin.json、uiskin.atlas 和 uiskin.png 文件。
关于java - Libgdx 表中的空白字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33149740/