【问题标题】:Two actors in a cell within a table (libGDX)表格内的一个单元格中的两个演员 (libGDX)
【发布时间】:2015-09-07 10:34:13
【问题描述】:

我想将两个演员放在表格的一个单元格中(这样他们就可以相互重叠)。数字应该与正方形的中心重叠。换句话说,表格中的方格应该是数字的容器。

这是我到目前为止写的:

table = new Table();
    table.padTop(100f);
    table.setDebug(true);

    btnLevel = new Button[50][3];
    lbl = new Label[50][3];
    for (int row = 0; row < 50; row++) {
        for (int col = 0; col < 3; col++) {
            btnLevel[row][col] = new Button(skin.getDrawable("up"), skin.getDrawable("down"));
            lbl[row][col] = new Label("" + X, style);

            // My Actors
            table.add(btnLevel[row][col]);  // square shape
            table.add(lbl[row][col]);       // number over the square

            if (col == 2) {
                table.row().pad(10f);
            }
        }
    }

如何使用表格让一个演员与另一名演员重叠?

换句话说:如何将演员(A)放在第一列(表格中)的第一行,并且演员(B)与演员(A)的位置相同?

【问题讨论】:

  • 所以?你试过什么?你被困在哪里了?而且,最重要的是,您的问题是什么
  • 如何让演员重叠另一个演员使用表格?
  • 因此,动态生成包含两个数字的标签,可能使用不同的形状来表示重叠。
  • .......谢谢,再次感谢......

标签: java libgdx


【解决方案1】:

每当您向Table 添加内容时,都会生成一个新的Cell。这些单元格不能重叠。您需要将Actor 添加到单元格中,该单元格既有方形又有Label

在您的情况下,您可以使用Stack

Stack stack = new Stack();
stack.add(btnLevel[row][col]); // square shape
stack.add(lbl[row][col]); // number over the square
table.add(stack);

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2014-06-12
  • 1970-01-01
  • 2021-11-29
  • 1970-01-01
  • 2015-12-08
  • 1970-01-01
  • 2017-11-26
  • 2020-01-02
相关资源
最近更新 更多