2.2. Размеры¶
При разработке сценариев можно использовать различные типы измерений:
px: пиксели текущего экрана. Однако эта единица измерения не рекомендуется, так как реальное представление внешнего вида может изменяться в зависимости от устройства. Каждое устройство имеет определенный набор пикселей на дюйм, поэтому количество пикселей на экране может также меняться.
dp: (device-independent pixels) независимые от плотности экрана пиксели. Абстрактная единица измерения, основанная на физической плотности экрана с разрешением 160 dpi (точек на дюйм). В этом случае 1dp = 1px. Если размер экрана больше или меньше, чем 160dpi, количество пикселей, которые применяются для отрисовки 1dp соответственно увеличивается или уменьшается. Например, на экране с 240 dpi 1dp=1,5px, а на экране с 320dpi 1dp=2px. Общая формула для получения количества физических пикселей из dp: px = dp * (dpi / 160).
sp: (scale-independent pixels) независимые от масштабирования пиксели. Допускают настройку размеров, производимую пользователем. Рекомендуются для работы со шрифтами.
pt: 1/72 дюйма, базируются на физических размерах экрана.
mm: миллиметры.
in: дюймы.
Подсказка
Предпочтительным для задания размеров визуальных элементов является использование "dp"
, а для задания размеров текста "sp"
.
Чтобы создать масштабируемый макет, способный адаптироваться к разным экранам, можно использовать в качестве значений ширины и высоты отдельных компонентов параметры "wrap_content"
и "match_parent"
.
Если используется "wrap_content"
, для ширины или высоты представления устанавливается минимальное значение, позволяющее уместить содержимое на экран, а параметр "match_parent"
служит для растягивания компонента по размеру родительского представления.
Если указать параметры "wrap_content"
и "match_parent"
вместо строго заданных размеров, в представлениях будет использоваться минимально необходимое место или они будут растягиваться на всю доступную длину и ширину соответственно.