我正在制作一个游戏,用户应该识别一个人脸部的部分。我应该得到图像上的坐标,但是我已经尝试过不同的手机/分辨率,但我得到了不同的坐标。怎么解决这个家伙?拜托,我真的需要帮助
答案 0 :(得分:1)
这可能不是最好的方法,但我做得很成功
double windowWidth = getWindow().getDecorView().getWidth();
double windowHeight = getWindow().getDecorView().getHeight();
float xDensity = event.getX();
double x = (xDensity / windowWidth) * 100;
float yDensity = event.getY();
double y = (yDensity / windowHeight) * 100;
* 100
不是必需的;我只是出于显示目的。
答案 1 :(得分:0)
图像应该由不同的可绘制视图构成,您可以抓住按下的状态。
如果您在哪里使用静态图像,则无法使用坐标系(基于px),因为手机和其他Android设备的屏幕尺寸不同。这种方式的另一种选择是使用dip(密度无关像素)而不是px。