XML-атрибуты, о которых должен знать Android-разработчик

После работы с виджетами в  Android в течение последних двух лет я многое узнал об ограничениях, несоответствиях, и скрытых XML-атрибутах. Некоторые параметры просто «слишком заумные», поэтому я буду предлагать некоторые стандартные настройки, которые вы должны использовать. Эти настройки также помогут вам уменьшить множество надоедливых предупреждений от IDE.

ImageView
android:adjustViewBounds="true"

Когда мы используем атрибут scaleType=»fitCenter», ImageView подстраивается под размеры самой картинки, а не размер Layot’а. В таком случае картинка может выйти за пределы видимой области.

Атрибут adjustViewBounds подгоняет картинку под размеры контейнера ImageView. Иногда это может не сработать, например, если у ImageView атрибут layout_width=»0dip». В таком случае нужно поместить ImageView в RelativeLayout или FrameLayout и можно без проблем использовать значение 0dp.

EditText
android:singleLine="true"
android:maxLines="1"

Раньше singleLine был довольно простым и мощным. Но теперь он устарел и вы должны использовать MaxLines = «1». К сожалению, ,maxLines более слабый в сравнении с singleLine. Самым большим преимуществом SingleLine является то, что игнорирует символы «\n» и помещая весь текст в одной строке.

Хотя SingleLine устарел, его по-прежнему активно используют в старых Android-приложениях для старых телефонов, так что singleLine не собирается уходить. Используйте maxLines, когда вы можете и SingleLine только тогда, когда это нужно.

android:textAllCaps="true"

Этот атрибут означает, что все буквы в тексте будут переведены в верхний регистр.

android:lineSpacingMultiplier="0.9"

По умолчанию межстрочный интервал равен 1. Значение из данного атрибута умножается на значение по умолчанию.

android:ellipsize="none"
android:ellipsize="end"

Android имеет неприятную привычку вставлять многоточие в конце текста, когда количество символов ограничено или даже заменяет троеточие на последнюю букву!

Вы можете отключить эту функцию вставив android:ellipsize=»none» на ваш TextView. Если вы хотите, чтобы текст читался нормально используйте android:ellipsize=»end».

android:includeFontPadding="false"

При использовании больших шрифтов вокруг букв образуются большие отступы. Чтобы отключить эту функцию используйте этот атрибут.

Источник: 15 quirky Android XML layout parameters to know.

Комментарии:

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *