我正在开发一款游戏,我是Android游戏开发的初学者。我正在使用Android Studio
和libgdx
。我需要屏幕适应所有设备。我在我的代码中使用屏幕宽度和高度,这改变了不同设备中游戏屏幕的位置和视图。我怎么解决这个问题?任何人都可以用简洁的代码帮助我完成这项工作吗?
答案 0 :(得分:0)
您应该使用dp单位来调整屏幕中元素的大小
然后将dp与屏幕密度相乘,您将获得屏幕像素。 要获得屏幕密度,请执行以下操作:
float density = getResources().getDisplayMetrics().density;
答案 1 :(得分:0)
在处理不同的屏幕时,通常需要做出决定 对于某种策略如何不同的屏幕尺寸和方面 比率应该处理。相机和舞台支持不同的视口 策略。
LibGDX提供了一种更方便的方法来处理这个问题:Viewport
Gdx.graphics.getWidth()
和Gdx.graphics.getHeight()
会返回运行应用程序的窗口(或移动设备,屏幕)的宽度和高度(以像素为单位)。
视口worldWidth/height
是相机视图的宽度和高度,适用于您的任何单位。
视口与世界单位中您所看到的游戏世界的位置和数量有关。 Gdx.graphics.getWidth()是屏幕或窗口的物理像素。