[英]How to start scrollpane without padding at top in Libgdx?
在libgdx中,我的應用程序中有一個ScrollPane,我不知道如何在頂部沒有額外空間的情況下滾動它。 當前,窗格頂部有一個巨大的空間,當我向下滾動時,文本(高分)會慢慢填滿該空間。
滾動之前:
滾動之后:
是否可以在沒有空格的情況下開始(以便窗格完全填滿),並且當我滾動時,我可以滾動瀏覽高分而不將它們向上移動?
我注意到我可以通過刪除以下行來完成此操作。
table.setTransform(true);
但是,如果這樣做,則無法縮放或設置表格的原點,因此文本顯得太大。
以下是我的滾動窗格創建方法:
private void createScrollPane(ArrayList<String> scrollPaneScores) {
scrollPaneViewport = new FitViewport(800, 480);
stage = new Stage(scrollPaneViewport);
Skin skin = new Skin(Gdx.files.internal("skin/uiskin.json"));
Table scrollableTable = new Table();
scrollableTable.setFillParent(true);
stage.addActor(scrollableTable);
Table table = new Table();
for (String score : scrollPaneScores) {
table.add(new TextButton(score, skin)).row();
}
table.pack();
table.setTransform(true);
//table.setTransform(true); //clipping enabled ... this setting makes scrolling not occur in uniform fashion
table.setOrigin(400, 0);
table.setScale(0.75f);
final ScrollPane scroll = new ScrollPane(table, skin);
//scrollableTable.add(scroll).expand().fill();
scrollableTable.add(scroll).maxHeight(300);
//stage.setDebugAll(true);
//When stage is created, set input processor to be a multiplexer to look at both screen and stage controls
inputMultiplexer.addProcessor(inputProcessorScreen);
inputMultiplexer.addProcessor(stage);
Gdx.input.setInputProcessor(inputMultiplexer);
scrollPaneCreated = true;
}
刪除setFillParent行。 滾動窗格中的表是一個老問題。
嘗試刪除scrollableTable.setFillParent(true);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.