Android как отправить координаты события касания на другой экран другого размера и плотности и сохранить его? - PullRequest
0 голосов
/ 15 апреля 2020

Итак, я объясню это настолько просто, насколько это возможно:

Я пытаюсь сделать 2d онлайн-игру. Я хочу начать с чего-то, поэтому рассмотрим, что у нас есть два устройства A и B с разными размерами экрана. Теперь, когда пользователь1 касается экрана устройства A, я хочу, чтобы пользователь2 на устройстве B точно знал, где пользователь1 коснулся.

обновление:

Хорошо, если я, например, получу координаты в устройстве A следующим образом:

float x = event.getX();
float y = event.getY():

, а затем отправлю их на устройство меньший экран, как я могу гарантировать, что они будут отображаться в том же месте, что я коснулся их на устройстве A?

1 Ответ

0 голосов
/ 15 апреля 2020

Вы можете предположить, что структура MVC (модель-представление-управление) или что-то в этом роде.

Вы можете использовать MVC -Модель класса Мир координаты, которые содержат логическое пространство.

Для класса MVC -View Дисплей , Мировые координаты будут преобразованы в физические координаты отображения устройства, называемые Viewport .

Когда вы получите ввод (MVC -Контроль) физических координат, они будут преобразованы в мировые.

Таким образом, вы можете держать мировые координаты отделенными от физических координат различные устройства.

Существует много ресурсов о преобразовании координат окна в окно просмотра в Inte rnet.

Например: Окно компьютерной графики в преобразование координат окна просмотра

...