我在舞台上添加了一个进度条,它按照预期获得了默认宽度。然而,我确实想稍微改变宽度,但由于某种原因 LibGDX 不这样做。我尝试过在进度条的背景上使用 setSize、setWidth、setMinWidth 并更改纹理。什么都不起作用。我唯一可以改变大小的是旋钮。
代码如下:
background = new Texture("progress_bar_texture");
knob = new Texture("knob_texture");
ProgressBar.ProgressBarStyle pbs = new ProgressBar.ProgressBarStyle();
pbs.background = new TextureRegionDrawable(new TextureRegion(background));
pbs.knob = new TextureRegionDrawable(new TextureRegion(knob));
pbs.knobAfter = pbs.knob;
progressBar = new ProgressBar(0f, 80f, 1f, false, pbs);
progressBar.setWidth(400); // This doesn't change anything at all...
table.add(progressBar).right().colspan(1).expandX().padRight(40);
最佳答案
Anton,您可以使用 1..colspan(2) 或 2.Table.setWidth() 增加表格中 ProgressBar 的宽度。如果您想要精确(像素完美)控制 ProgressBar 的位置和大小,请将其添加到 Group 而不是 Table - 那么您尝试的方法(进度条背景上的 setSize、setWidth、setMinWidth)将起作用。
关于java - Scene2d 进度条未调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37503499/