0

我正在将我的游戏从 WP7 移植到 Android。我的游戏是一种“彩色线条”游戏。有一个带有单元格的板(它是静态背景图像的一部分),可以放置球。在 WP7 上,坐标一切正常:所有 WP7 设备的分辨率均为 800*480,我可以轻松定义用户点击了哪个单元格。

但是android有一些问题:在不同的屏幕上我面临不同的分辨率。我的游戏板有一些图形边框,我不知道它们在每个安卓屏幕上的大小。

我不知道如何将 getTouch 事件的坐标连接到板上被触摸的单元格(如上所述,它是分辨率为 800*480 的静态背景图像的一部分)。

另外,我不知道如何找到要放置球的某个单元格的中心坐标。

4

1 回答 1

2

将事件中的坐标缩放到您的图像。

   DisplayMetrics metrics = new DisplayMetrics();
   getWindowManager().getDefaultDisplay().getMetrics( metrics );
   float x = 800 / metrics.widthPixel * event.getX();
   float y = 480 / metrics.heightPixel * event.getY();
于 2012-06-21T11:06:29.013 回答