该功能无法让您保持纵横比,甚至无法保持您的想法。它只是禁用了在桌面应用程序上调整屏幕大小的可能性。
请查看 libGDX wiki 尤其是 Scene2D 页面。
看看舞台上的 Viewport 内容。它解释了如何保持当前 libGDX 的纵横比。有一些教程在虚拟分辨率和屏幕调整大小方法的帮助下解释了不同的方式。已经过时了!
来自维基
这个例子也使用了一个固定的舞台尺寸,在任何一个上都带有“黑条”
侧面,这次使用 glViewport。首先 800x480 的舞台大小是
使用 Scaling 类缩放以适应屏幕大小。结果是
用于配置glViewport,改变屏幕的哪个部分
OpenGL 将使用。最后,将 setViewport 传递给视口位置
和大小。结果和上一个例子一样,stage有
“黑条”是必要的,以保持纵横比,但没有绘图可以
发生在视口之外。
public void resize (int width, int height) {
Vector2 size = Scaling.fit.apply(800, 480, width, height);
int viewportX = (int)(width - size.x) / 2;
int viewportY = (int)(height - size.y) / 2;
int viewportWidth = (int)size.x;
int viewportHeight = (int)size.y;
Gdx.gl.glViewport(viewportX, viewportY, viewportWidth, viewportHeight);
stage.setViewport(800, 480, true, viewportX, viewportY, viewportWidth, viewportHeight);
}
问候