繁体   English   中英

如何使Scene2d窗口适合其内容? (Libgdx)

[英]How to fit a Scene2d window to it's content ? ( Libgdx )

一切都在标题上,我试图逐步按照Nathan Sweet(Libgdx主要贡献者)提供的示例在Scene2d中创建一个窗口,但是我想到了一个意外的结果:

在此处输入图片说明

就像您可以看到文本从窗口中消失一样,这是我的窗口代码:

Window window = new Window("The new Window commIng up", skin_deff);
               window.setPosition(400, 200);    
               window.pack();


        // putting  stuff together

                table.debug();
                table.add(heading).colspan(3).expandX().spaceBottom(50).row();;
                table.add(scrollPane).uniformX().expandY().top().left();
                table.add(window).padLeft(30);
                // table.add(play).uniformX();
                table.add(back).uniformX().bottom().right().padLeft(550);
                stage.addActor(table);

这是我要遵循的Nathan Sweet的示例:

在此处输入图片说明

代码:

label.setPosition(100, 200);
        stage.addActor(label);

        Window window = new Window("[RED]Multicolor Bla Bla Bla[GREEN] Title", skin);
        window.setPosition(400, 200);
        window.pack();
        stage.addActor(window);

我找到了解决方案,问题出在我的表布局中:

                table.debug();

                table.add(heading).colspan(3).expandX().spaceBottom(50).row();
                table.add(scrollPane).uniformX().expandY().top().left();
                table.add(window).top();
                // table.add(play).uniformX();
                table.add(back).uniformX().bottom().right();

                stage.addActor(table);

代替

            table.debug();
            table.add(heading).colspan(3).expandX().spaceBottom(50).row();;
            table.add(scrollPane).uniformX().expandY().top().left();
            table.add(window).padLeft(30);
            // table.add(play).uniformX();
            table.add(back).uniformX().bottom().right().padLeft(550);
            stage.addActor(table);

padLeft应用于window ,而后退按钮则迫使文本与窗口重叠。

现在结果看起来好多了:):

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM