Android 元素在不同屏幕上更改大小
我得到了这个图像按钮,它被放在一张桌子上,并作为演员添加到舞台上。它在我的手机上看起来很棒,但当我在我的平板电脑上运行时,按钮太大而且位置不合适。我在舞台上声明了这样一个视口(我也尝试了不同类型的视口): 然后这是调整大小的方法:Android 元素在不同屏幕上更改大小,android,libgdx,position,Android,Libgdx,Position,我得到了这个图像按钮,它被放在一张桌子上,并作为演员添加到舞台上。它在我的手机上看起来很棒,但当我在我的平板电脑上运行时,按钮太大而且位置不合适。我在舞台上声明了这样一个视口(我也尝试了不同类型的视口): 然后这是调整大小的方法: public void resize(int width, int height) { stageButton.getViewport().update(width, height, true); table.setBounds(backBut
public void resize(int width, int height) {
stageButton.getViewport().update(width, height, true);
table.setBounds(backButtonW, backButtonH, buttonSizew, buttonSizeH);
stageText.getViewport().update(width, height, true);
view.update(width, height);
camera.position.set(camera.viewportWidth/2, camera.viewportHeight/2, 0);
//camera.update();
}
我只是简单地将尺寸和位置设置如下:
public static float buttonSizeH = 110;
public static float buttonSizew = 110;
table.add(btnArrow).pad(30).size(buttonSizew, buttonSizeH);
table.add(btnFB).size(buttonSizew, buttonSizeH);
table.setBounds(backButtonW, backButtonH, buttonSizew, buttonSizeH);
如果重要的话,这就是我用视口设置相机的方式:
camera = new OrthographicCamera();
view = new StretchViewport(screenWidth, screenHeight,camera);
view.apply();
camera.position.set(camera.viewportWidth/2, camera.viewportHeight/2, 0);
那就要发生了。您使用的是像素大小,但并非所有设备上的像素大小都相同。你不应该在Android上使用固定尺寸,如果你是,你需要准备好让它在不同的设备上看起来不同。本指南没有使用您的游戏引擎,但它应该让您了解在UI设计中需要记住的问题:不,我宁愿使用正确的方法。如果不使用像素,我应该如何定义大小?让应用程序在各种设备上统一运行是Android开发的一个重要部分。你应该看看分辨率、像素和像素密度之间的区别。好的,谢谢,我会的,我已经开始了。已转换我的相机等,因此不再以像素为单位声明。但我还是觉得这些按钮有问题。它们仍然出现在我的平板电脑屏幕外。
camera = new OrthographicCamera();
view = new StretchViewport(screenWidth, screenHeight,camera);
view.apply();
camera.position.set(camera.viewportWidth/2, camera.viewportHeight/2, 0);