Освой Android играючи
/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000
Material Design Icons - значки в стиле Material
В Android 5.0 был представлен новый Material Design, который позже стал доступен и для старых устройств через библиотеку совместимости в немного усечённом виде.
Если говорить общими словами, то дизайн пытается быть похожим на реальный мир. Это значит, что элементы подчиняются физическим законам. Например, элементы можно разделить и соединить обратно, изменить их цвет и форму, они твёрдые. Элементы могут отбрасывать тень. Но нельзя делать некоторых вещей - не могут уместиться в одном месте, если не позволяет объём. Причём, все элементы имеют толщину 1dp. Представьте себе, что элементы в виде толстой бумаги внутри вашего телефона под стеклом. Вы не можете сделать оборот элемента вокруг своей оси, так как толщина вашего телефона слишком мала для этой операции. Может только чуть-чуть повернуть. Элементы не могут просачиваться через другие элементы (они же твёрдые). Вообще, многие свойства материального дизайна присущи котам, за исключением разве только толщины.
implementation 'com.google.android.material:material:1.7.0'
При использовании компонентов на панели действий не забывайте вызывать метод getSupportActionBar().getThemedContext() для получения правильного контекста.
У компонентов появился новый атрибут elevation (высота):
<ImageView …
android:elevation="8dp" />
В соответствии с новым дизайном компоненты могут "парить" над экраном, отбрасывая тень. Система сама рассчитает нужную тень вокруг элемента, в том числе и вокруг круглой кнопки. Программным аналогом являются методы getElevation()/setElevation(). Подробнее о Elevation
Разрешение для уведомлений. Android 13 Tiramisu
Photo Picker: Выбираем картинки и видео на Android 13
Раздел Compose