<supports-screens>

СИНТАКСИС:
СОДЕРЖИТСЯ В:
<manifest>
ОПИСАНИЕ:

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

Приложение “поддерживает” размер экрана, если оно правильно заполняет весь экран. Для большинства приложений размер отлично подстраивается автоматически. Тем не менее, часто необходимо оптимизировать интерфейс приложения для различных размеров экрана, путем создания альтернативных ресурсов разметки. Например, вы можете использовать разную разметку явлений для телефонов и планшетов.

Однако, если ваше приложение плохо работает с разными размерами экранов, вы можете использовать элемент <supports-screens>.

Примечание: Android 3.2 включает новые атрибуты android:requiresSmallestWidthDp, android:compatibleWidthLimitDp и android:largestWidthLimitDp. Если вы разрабатываете приложение для Android 3.2 и выше, используйте данные атрибуты для объявления поддерживаемых размеров экрана, вместо атрибутов, основанных на обобщенных размерах.

АТРИБУТЫ:
android:resizeable

Указывает, должно ли приложение изменять размер на разных экранах. Значение по умолчанию true. Если установлено значение false, система будет запускать приложение в режиме совместимости на больших экранах.

Атрибут устарел, не используйте его.

android:smallScreens

Указывает, поддерживает ли приложение маленькие экраны. Маленьким считается экран с меньшим соотношением, чем “нормальный” (стандартный HVGA). Значение по умолчанию true.

android:normalScreens

Указывает, поддерживает ли приложение нормальные экраны. Традиционно это HGVA экраны со средней плотностью, но “нормальными” также считаются экраны WQVGA с низкой плотностью и WVGA с высокой плотностью. Значение по умолчанию true.

android:largeScreens

Указывает, поддерживает ли приложение большие экраны. Большим считается экран, который значительно больше, чем “нормальный” экран телефона. Значение по умолчанию не постоянно от версии к версии, поэтому лучше явно указывайте значение данного атрибута. Помните, что false, как правило, включает режим совместимости.

Атрибуте добавлен в API 9.

android:anyDensity

Указывает, содержит ли приложение ресурсы для любой плотности экрана.

Для Android 1.6 (API 4) и выше, значение по умолчанию равно true и вы не должны указывать false, если абсолютно не уверены, что это требуется для работы приложения. Единственная причина, когда это может быть необходимо, это если ваше приложение напрямую управляет растровыми изображениями. (Смотрите раздел Поддержка различных экранов.)

android:requiresSmallestWidthDp

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

Например, типичный размер экрана телефона имеет smallestWidth равный 320dp, 7 дюймовый планшет – 600dp, 10 дюймовый – 720dp. Эти значения, как правило являются кратчайшими размерами свободного пространства экрана.

Размер, с которым сравнивается ваше значение учитывает также системные элементы на экране. Например, если устройство имеет постоянные элементы интерфейса, система объявляет smallestWidth меньше, чем фактический размер экрана. Таким образом, используемое значение должно быть равно минимальной ширине, которая необходима для макета, независимо от ориентации экрана.

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

Внимание: система Android не обращает внимание на этот атрибута, так что он не влияет на поведение приложения во время выполнения. Он используется сервисами, вроде Google Play для фильтрации. Тем не менее, Google Play в настоящее время не поддерживает этот атрибут (Android 3.2), так что вы должны продолжать использовать атрибуты других размеров, если ваше приложение не поддерживает маленькие экраны.

Атрибута добавлен в API 13.

android:compatibleWidthLimitDp

Атрибут позволяет разрешить режим совместимости, указав максимальную “наименьшую ширину экрана”, для которой создано приложение. Если наименьшая сторона доступного пространства экрана больше, чем значение атрибута, пользователи смогут установить приложение, но должны будут включить режим совместимости. По умолчанию, режим совместимости запрещен и разметка обычно подстраивается под размер экрана, но доступна кнопка в системной панели, позволяющая включать и выключать режим совместимости.

Если приложение совместимо со всеми размерами экрана и разметка правильно подстраивается, нет необходимости использовать данный атрибут.

Примечание: в настоящее время режим совместимости эмулирует только мобильные телефоны с шириной 320dp, так что режим совместимости не применяется, если значение атрибута больше 320.

Атрибут добавлен в API 13.

android:largestWidthLimitDp

Атрибут позволяет разрешить режим совместимости, указав максимальную “наименьшую ширину экрана”, для которой создано приложение. Если наименьшая сторона доступного пространства экрана больше, чем значение атрибута, приложение запускается в режиме совместимости, без возможности отключить его./p>

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

Примечание: в настоящее время режим совместимости эмулирует только мобильные телефоны с шириной 320dp, так что режим совместимости не применяется, если значение атрибута больше 320.

Атрибут добавлен в API 13.

ДОБАВЛЕНО:
уровень API 4
СМОТРИТЕ ТАКЖЕ:
Поддержка различных экранов
Метрика экрана

Добавить комментарий