Предыдущая лекция | | Следующая лекция :----------------:|:----------:|:----------------: [Первый проект в Android Studio](./android_studio.md) | [Содержание](../readme.md#практика-разработка-мобильных-приложений) | [Смена ориентации, жизненный цикл activity, сохранение данных](./layout_orientation.md) # Стили и темы, ресурсы, фигуры, обработка событий * [Стили](#стили) * [Темы](#темы) * [Работа с ресурсами](#работа-с-ресурсами) * [Фигуры в качестве фона для визуальных элементов](#фигуры-в-качестве-фона-для-визуальных-элементов) * [Обработка событий](#обработка-событий-клик-по-кнопке) * [Кнопки в Material Design](#дополнение) ## Стили Мы можем настроить элемент с помощью различных атрибутов, которые задают высоту, ширину, цвет фона, текста и так далее. Но если у нас несколько элементов используют одни и те же настройки, то мы можем объединить эти настройки в стили. Например, пусть у нас есть несколько элементов TextView: ```xml ``` ![](../img/04022.png) Все эти **TextView** имеют одинаковый набор свойств, и, к примеру, если нам захочется изменить цвет текста, то придется менять его у всех трех TextView. Данный подход не оптимален, а более оптимальный подход представляет использование стилей, которые определяются в проекте в папке `res/values`. Итак, добавим в проект в папку `res/values` новый элемент Value Resourse File, который назовем `styles.xml`: ![](../img/04023.png) Определим в файле styles.xml следующее содержимое: ```xml ``` Здесь определен новый стиль **TextViewStyle**, который с помощью элементов **item** задает значения для атрибутов **TextView**. Стиль задается с помощью элемента `