1

我试图在不同的 android 设备上拥有相似大小的游戏对象,这意味着不同的屏幕尺寸和分辨率,有什么方法可以重新计算,例如 1 厘米到像素。

我的意思是根据屏幕分辨率和大小重新计算它,并获得与现实生活大小相对应的像素数。

当您在 xml 中创建 android UI 时,我读到了与设备无关的像素,但这对我来说似乎并不好,因为我在 OpenGL 中执行此操作,并且简单想将任何真实生活大小重新计算为像素。

4

2 回答 2

1
  1. 使用 getHeight() 和 getWidth() 方法获取游戏视图的高度和宽度。
  2. 定义相对于视图的高度和宽度的所有游戏对象尺寸。

此外,不要从 View 的构造函数中调用 getHeight() 和 getWidth(),这将返回 0,因为您的 View 表面尚未创建。我在我的游戏中使用 SurfaceView,我在 surfaceCreated() 方法中调用这些方法。

于 2012-01-19T08:13:18.353 回答
1

使用屏幕 dpi 可能会起作用。 这篇文章解释了如何使用 DisplayMetrics 来获取它。

于 2012-01-18T17:49:41.217 回答