【问题标题】:libgdx, table in scrollpanelibgdx,滚动窗格中的表格
【发布时间】:2014-06-25 18:07:42
【问题描述】:

我正在尝试为我的游戏创建商店。 在这家店里,应该有 2 个滚动面板:一个是你的货品,另一个是经销商的销售。

(它想这样做) http://i.stack.imgur.com/5gLUr.jpg

所以一开始,我尝试在我的 ScrollPane 中放置一个列表,但我无法将我的武器图像和文本都放入其中。 所以我试着在我的 ScrollPane 中放一张表:只要我的库存中有东西,我就会添加带有物品纹理的单元格,另一个带有武器名称的单元格,...) 但是我找不到选择表的方法...

所以我有点困惑:如果我使用列表,我无法放置纹理并使其看起来很花哨,但使用表格,我无法选择项目...

你们对我应该怎么做有什么想法吗?

谢谢!

编辑:这里有一些代码,但不是所有内容,因为它非常丑陋!

Table test3 = new Table(skin2);
    for(WeaponElement weapon : GameScreen.dataLoader.getWeaponArray()){

            Image img = new Image(new Texture(weapon.getIconPath()));
            test3.add(img).width(32);
            test3.add().width(10);
            test3.add(weapon.getName()).align(Align.left).row();

    }

    panelShop = new ScrollPane(test3, skin2);
    panelShop.layout();

所以基本上,我将所有武器添加到我的 test3 表行中,将其添加到我的 ScrollPane 中,但我想让它们可选择,我可以通过使用列表来完成,但如果我这样做,我不能使用不再有桌子,让它看起来很棒......

【问题讨论】:

  • 显示您的一些代码 sn-ps 可能会帮助潜在的回答者:)
  • 好的,这里有一些代码!

标签: java libgdx


【解决方案1】:

使用按钮来推动呢?下面的示例显示了一个表格,其中一行有一个按钮。使用带有要显示的文本的 Button,并在其旁边添加图片。

Table scrollableTable = new Table(skin);
scrollableTable.setBounds(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());

for(WeaponElement weapon : GameScreen.dataLoader.getWeaponArray()){
    final TextButton button = new TextButton(wapon.name, skin, "default");
    button.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent event, float x, float y) {
            // do stuff
        });
    scrollableTable.add(button).center();

    // add a picture
    Image img = new Image(new Texture(weapon.getIconPath()));
    scrollableTable.add(img).width(32);

    // finish a row
    scrollableTable.row();
}

【讨论】:

  • 其实,我尝试过这样做,我想这是最好的方法!但我仍然有一个问题:我试图让我的按钮有点像切换按钮,所以在我尝试做的“点击”方法上,例如 button.setCheck(true);,但什么都没有发生。 ..
【解决方案2】:

尝试 Tree ui 组件并将其用作表格。它是可选择的并接受 Actor 作为节点(使用 Table 作为行布局)。 请参阅 com.badlogic.gdx.tests.TestTree (link) 示例。

【讨论】:

    猜你喜欢
    • 2016-07-22
    • 1970-01-01
    • 1970-01-01
    • 2013-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多