簡體   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