После работы с виджетами в 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"
При использовании больших шрифтов вокруг букв образуются большие отступы. Чтобы отключить эту функцию используйте этот атрибут.