Как организовать стили в приложении

«Как организовать стили в приложении» — вопрос из категории UI и Views, который задают на 24% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для организации стилей в Android приложении лучше использовать темы (Themes) и стили (Styles) в res/values/themes.xml и styles.xml. Основные принципы:

  1. Темы - глобальные атрибуты для всего приложения/активности:
<style name="Theme.MyApp" parent="Theme.Material3.DayNight">
    <item name="colorPrimary">@color/purple_500</item>
    <item name="colorOnPrimary">@color/white</item>
</style>
  1. Стили - повторяемые наборы атрибутов для конкретных View:
<style name="MyButtonStyle" parent="Widget.Material3.Button">
    <item name="android:textColor">@color/white</item>
    <item name="android:backgroundTint">@color/purple_500</item>
</style>
  1. Лучшие практики:
  • Используйте Material Design 3 как базовую тему
  • Разделяйте светлую и темную тему через -night квалификаторы
  • Выносите цвета в отдельный colors.xml
  • Для сложных стилей используйте TextAppearance и ShapeAppearance
  • Избегайте inline-стилей в разметке