Как я могу заставить мое приложение для Android правильно отображаться на сенсорной панели? - PullRequest
2 голосов
/ 30 октября 2011

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

  android:resizeable="true"
  <supports-screens
    android:smallScreens="true"
    android:normalScreens="true"
    android:largeScreens="true"
    android:anyDensity="false" /> 

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

original not exactly fixed

Ответы [ 2 ]

1 голос
/ 30 октября 2011

Прочтите эту статью:

http://developer.android.com/guide/practices/screens_support.html

Следуя методикам, описанным в этом документе, вы можете создать приложение, которое будет отображаться правильно и обеспечивает оптимизированное взаимодействие со всемиподдерживаемые конфигурации экрана, используя один файл .apk.... Ваше приложение достигает "независимости от плотности", когда оно сохраняет физический размер (с точки зрения пользователя) элементов пользовательского интерфейса при отображении на экранах с различной плотностью.

Сохранение независимости от плотности важно, потому что безтаким образом, элемент пользовательского интерфейса (такой как кнопка) выглядит физически больше на экране с низкой плотностью и меньше на экране с высокой плотностью.Такие изменения размера, связанные с плотностью, могут вызвать проблемы в макете приложения и удобстве использования.... Система Android помогает вашему приложению достичь независимости от плотности двумя способами:

  • Система масштабирует единицы измерения в дп в соответствии с текущей плотностью экрана

  • Система масштабирует извлекаемые ресурсы до соответствующего размера, исходя из текущей плотности экрана, если необходимо

1 голос
/ 30 октября 2011

Я думаю, что лучше создать свой макет для каждого размера экрана и разрешения.Это легко в Android.Скопируйте макет из папки ресурсов layout и вставьте его в папки layout-land, layout-xlarge, layout-xlarge-land и ... и измените в них нужные параметры.*

Вы можете проверить эту ссылку:

...