(Android) Разные координаты в разном разрешении Как исправить? - PullRequest
0 голосов
/ 07 февраля 2012

Я создаю игру, в которой пользователь должен идентифицировать части лица человека.и мне нужно коснуться координат на изображении, но я пробовал это на разных телефонах / разрешении, но я получаю разные координаты.как это исправить ребята?пожалуйста, мне действительно нужна помощь с этим

Ответы [ 2 ]

1 голос
/ 15 июня 2012

Возможно, это не лучший способ сделать это, но я добился успеха, выполнив

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 не обязательно; У меня просто есть это для отображения.

0 голосов
/ 07 февраля 2012

Изображение должно быть построено из различных нарисованных видов, которые вы можете захватить нажатыми.

Если вы используете статическое изображение, то вы не можете использовать систему координат (основанную на px), поскольку телефоны и другие устройства Android не имеют одинаковый размер экрана.В этом случае вы можете использовать dip (пиксели, независимые от плотности) вместо px.

...