Размещение изображения / растрового изображения? - PullRequest
0 голосов
/ 12 августа 2011

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

Я также пытался использовать SurfaceViews с растровыми изображениями, чтобы каждое отдельное изображение могло брать размер экрана и настраивать их.соответственно.У меня проблемы с тем, чтобы картинки не падали друг на друга, а вместо этого располагались по порядку, спускаясь по экрану.Я могу получить первые 2, просто отлично обозначив Rect dst с начальной высотой, где другая заканчивается, но третье и четвертое не отображаются на экране.Например, я использовал

Rect dst = new Rect(0, 0, mWidth, mHeight/7 );

для первого изображения, которое находится сверху.Затем для второго изображения

Rect dst = new Rect(0, mHeight/7, mWidth, mHeight/3 );

(mHeight и mWidth - это ширина и высота холста)

Не уверен, как расположить следующие 2 изображения под ними и потом.Я пытался

Rect dst = new Rect(0, mHeight/7+(mHeight/3), mWidth, mHeight/7); 

Это не сработало.Честно говоря, это выглядит действительно просто, и я уверен, что это так, но я просто не могу заставить изображения работать так, как я хочу.Есть ли способ оставить изображение в целом и указать, когда выбрано определенное место, оно что-то делает (это будет работать на каждом телефоне одинаково).

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

1 Ответ

1 голос
/ 12 августа 2011

Ну, вы можете разделить экран на такие области, как левый, верхний, ширина, высота. Например. Регион 1 (0,50,100,100) Регион 2 (100, 50, 100, 100).

И добавьте OnTouchListener и используйте его, чтобы получить координаты касания и проверить, к какой области он принадлежит. Я не уверен, что это хороший способ, но это выполнимо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...