Темы на Android: как они работают и как их устанавливать
Кастомизация – это одна из забытых особенностей Android. Забытых – потому что сегодня, как мне кажется, изменением внешнего вида операционной системы занимаются только гики и пользователи iOS, которые дорвались до такой возможности с выходом iOS 14. Другое дело, что в представлении большинства кастомизация представляет собой нечто вроде перепрошивки или накатывания сторонней оболочки поверх предустановленной по умолчанию. Но это глубочайшее заблуждение.
Самый простой способ кастомизировать Android — сменить тему
Оболочки многих Android-смартфонов поддерживают темы, или, как их ещё называют, скины. Они позволяют изменить оформление интерфейса ОС, подогнав его под конкретные события в вашей жизни или просто освежив его безотносительно каких-либо факторов. Достаточно просто выбрать интересующую вас тему, скачать её себе на смартфон и провести несложные манипуляции по установке. Несмотря на то что мой Honor View 20 из коробки содержит специальный каталог с темами, я разберу два способа установки тем: удобный и, скажем так, полуудобный.
Как сменить тему на Android
Для начала разберёмся с тем, как действует удобная установка тем. На самом деле смартфонов, которые предлагают каталог тем из коробки, довольно много. Поэтому не думаю, что вам придётся скачивать их где-то на стороне.
Запустите штатное приложение «Темы» на Android, установленное по умолчанию;
Найдите в каталоге ту тему, которая вам нравится (не торопитесь, скорее всего, их очень много);
У Huawei есть свой каталог с темами для Android
Откройте её и купите, если она платная, либо просто скачайте, если она распространяется бесплатно;
Темы могут изменять внешний вид не всех иконок приложений, которые у вас установлены
Дождитесь окончания загрузки выбранной вами темы, а затем нажмите «Применить»;
Чтобы вернуть всё назад, перейдите в «Темы» — «Я» — «Предустановленные темы» и выберите исходную.
Все темы, которые вы скачиваете из официального каталога, установленного на ваш смартфон, сохраняются в приложении «Темы» в разделе вашего профиля. То есть вы можете скачать разом несколько новых тем, а потом последовательно примерять их, когда появится время.
Не знаю, как у вас, но большинство тем от Huawei платные. В среднем они стоят по 8-30 рублей, но встречаются и более дорогие. Бывают такие, которые оцениваются в 70, 150 и даже 200 рублей. Если вы не уверены, что готовы платить за них такие деньги, вы можете попробовать тему бесплатно. Для этого достаточно нажать на кнопку «Попробовать бесплатно» и тема применится к вашему интерфейсу на 5 минут, по истечении которых она отключится, если вы её не оплатите.
Как установить новый лаунчер
Лаунчеры — это слишком сложный способ кастомизации. По крайней мере, в сравнении с темами
Если ваш смартфон по умолчанию не предусматривает специального каталога с темами, скачать его на стороне просто так не получится. Несмотря на то что в Google Play целая тьма приложений с темами, на самом деле это обман. Даже не представляю, почему Google их не поудаляет. Ведь вместо тем там рекламируются либо сторонние приложения, либо предлагается возможность сменить обои, но не сам интерфейс ОС. А вот чтобы изменить оформление Android, вам потребуется отдельный лаунчер, который уже можно скачать в Google Play без каких-либо проблем.
Как быстро перебросить файлы с Android на Mac или Windows. Мой любимый способ
По сути, лаунчер – это кастомная тема на максималках. Дело в том, что его установка изменяет не только оформление интерфейса, но и иногда добавляет некоторые новые функции. Например, после установки Poco Launcher у меня появилась кнопка быстрой очистки оперативной памяти, которой раньше не было.
Как изменить вид иконок на Android
Весь процесс выглядит примерно так:
Скачайте Poco Launcher из Google Play;
Скачайте приложение с иконками PocoPack;
Темы могут быть доступны в сторонних лайнерах для Android
Установите Poco Launcher себе на смартфон;
В настройках Poco Launcher выберите нужный пакет иконок.
Правда, учитывайте, что после установки лаунчера вам придётся раздать довольно много разрешений, открыв ему доступ к взаимодействию с интерфейсом, приложениями и системными инструментами.
Стоит ли оно того? На мой взгляд, абсолютно нет. Несмотря на то что я вообще довольно осторожен в вопросах кастомизации, прибегая к ней только в самых крайних ситуациях, работать с темами из штатного каталога мне понравилось. А вот запариваться с установкой лаунчеров и подготовкой их к нормальному использованию – нет. Поэтому, если ваш смартфон не предлагает каталог с темами, не парьтесь, вы не многое теряете. Но уж если предлагает, обязательно попробуйте: возможно, вам понравится.
Новости, статьи и анонсы публикаций
Свободное общение и обсуждение материалов
Instagram уже давно перекочевал из простого приложения по обмену фотографиями в средство для заработка денег. Многие крупные блогеры имеют контракты со знаменитыми компаниями и занимаются их раскруткой. После просмотра контента от знаменитостей волей-неволей задумываешься о том, чтобы не ударить в грязь лицом. Качество снимков должно быть если не на таком же уровне, то хотя бы стремящимся к ним. Специально для того, чтобы ваши снимки казались еще лучше, а качество сториз не вызывало реакции «вырвиглаз», мы сделали для вас подборку лучших приложений для работы с контентом в Инстаграм.
Как вы просыпаетесь по утрам? Наверное, тяжело. А что вас будит? Ну, конечно, будильник, который вы ставите на телефоне. Во-первых, это удобно, потому что не нужно иметь дополнительный атрибут в виде аналогового будильника. Во-вторых, это комфортно, потому что на Android, в отличие от iPhone, будильники срабатывают более мягко, аккуратно выводя вас из состояния сна. Но бывает и такое, что будильник может попросту не сработать. Недавно я сам столкнулся с подобной проблемой. Рассказываю, что делать.
Google Chrome по праву может считаться главным браузером в интернете. Ежедневно его открывает огромное количество пользователей по всему миру. Совсем недавно состоялся релиз новой 94 версии популярного приложения от компании Google, и теперь обновления будут выходить немного иначе. Если раньше они выходили каждые шесть недель, то сейчас этот срок будет уменьшен до четырех. Таким образом пользователи смогут наслаждаться новыми фишками чаще, а серфинг в сети станет еще быстрее и безопаснее. Изменений вышло достаточно много, так что обещает быть интересно.
Многие на Андроид пользуются темами и темы довольно популярны. То что вам кажется, что это не нужно — это мнение угнетенных эплом людей, которым запрещено выражать индивидуальность. Хорошо хоть там некоторое убогое подобие минимальной кастомизации дали людям и многим нравится.
Являюсь владельцем LG G6, в котором предусмотрена функция тем с завода. Выбор не сказать, чтобы сильно обширный, но достойных бесплатных вариантов предостаточно. Так же прекрасно устанавливаются сторонние темы от того же пикселя и кастомные. Всё делается без каких-либо танцев с бубном нажатием одной кнопки. Не скажу, что меняю их каждый день, но для разнообразия периодически это делаю. И дурацкое желание купить новый телефон сразу же пропадает =)
Источник
Темы и стили в Android без магии. И как их готовить с SwitchCompat
В предыдущей статье мы рассмотрели как использовать темы и стили на уровне кода, на примере кастомной view. В этой статье давайте разберем несколько способов стилизации стандартного ui элемента, а в частности SwitchCompat.
Содержание
Введение
Не всегда оформление по умолчанию стандартного UI элемента устраивает дизайнера. Давайте разберем, как поменять внешний вид элемента на примере SwitchCompat.
Для решения задачи нам нужно:
Создать свой стиль для SwitchCompat.
Каким-то образом задать этот стиль SwitchCompat.
Назначить стиль SwitchCompat можно несколькими способами, например:
Указывать для каждой view в верстке экранов через атрибут style.
Создать тему с переопределенным атрибутом switchStyle и назначить эту тему в манифесте для всего приложения или конкретной активити. Это изменит внешний вид view для всего приложения/активити.
Тему также можно установить программно, в коде активити. При необходимости ее можно менять «на лету».
Новый стиль для SwitchCompat
В ресурсах создадим новый стиль MySwitchStyle, наследуем оформление от Widget.AppCompat.CompoundButton.Switch, задав parent. Можно и не наследовать, но тогда придется указать все значения, даже которые мы не планируем менять.
Чтобы что-то изменить, надо переопределить требуемые атрибуты. Атрибуты можно посмотреть в документации.
В документации видим несколько атрибутов. Они указаны в виде, как если бы мы обращались к ним в коде (например, вот так R.styleable.SwitchCompat_android_thumb). Я расшифрую только часть из них, чтобы не было сомнений. Назначение остальных несложно понять из документации.
В коде
В xml
SwitchCompat_android_thumb
android:thumb
SwitchCompat_thumbTint
thumbTint
SwitchCompat_track
track
SwitchCompat_trackTint
trackTint
android:thumb — ресурс для подвижной части SwitchCompat
track — ресурс для неподвижной части SwitchCompat
thumbTint — позволяет окрашивать подвижную часть в нужные цвета в зависимости от состояния SwitchCompat
trackTint — позволяет окрашивать неподвижную часть в нужные цвета в зависимости от состояния SwitchCompat
В качестве примера изменим цвет thumb (кружочка) — пусть во включенном состоянии он будет оранжевым, в выключенном — зеленым. Некрасиво, но наглядно.
Нам понадобится селектор в папке color наших ресурсов. Файл selector_switch_thumb.xml
Теперь зададим атрибут thumbTint в нашем стиле.
Теперь все SwitchCompat, получившие каким-то образом стиль MySwitchStyle, будут выглядеть по-новому.
Стиль в верстке
Самый тривиальный и негибкий способ.
Стиль применяется при inflate ресурса layout.
Повлиять программно мы никак не можем.
Указывать каждый раз в верстке неудобно. И можем забыть.
Стиль в теме. Тема назначается через Manifest
Создаем тему AppTheme и задаем значение атрибуту switchStyle. Значением является наш стиль MySwitchStyle.
Тема может быть указана в манифесте для всего приложения
Или для конкретной активити
Теперь все SwitchCompat будут иметь новый внешний вид. Без изменения в верстке.
Плюсы — Можем менять внешний вид для всего приложения сразу.
Минусы — налету менять не получится.
Стиль в теме. Тема назначается программно
Для того, чтобы установить тему для активити программно, нужно вызвать метод активити setTheme(themeResId).
Давайте менять тему активити в зависимости от состояния Switch.
Устанавливаем тему программно, вызвав setTheme. Метод надо вызывать до super.onCreate(savedInstanceState). В onCreate у нас происходит инициализация фрагментов (когда они есть).
Задаем начальное состояние Switch в зависимости от темы.
Устанавливаем листенер, который при изменении Switch меняет тему в настройках и перезапускает активити через метод активити recreate().
Результат
Другие View
Чтобы переопределить стиль для SwitсhView для всего приложения, мы переопределили значение атрибута switchStyle, можно догадаться, что такие атрибуты есть и для других View.
editTextStyle
checkboxStyle
radioButtonStyle
Как их искать? Я просто смотрю исходники, через Android Studio. Заходим в тему, зажимаем ctrl, кликаем на родителе нашей темы. Смотрим, как описывают тему ребята из Google. Смотрим, какой атрибут определяется и от какого стиля можно отнаследоваться. Пользуемся.
Кусок из темы Base.V7.Theme.AppCompat.Light.
Ресурсы
Статья не претендует на полный справочник. Код умышленно сокращен. Я ставил задачу дать общее понимание — как это работает и зачем это нужно. Дальше все легко ищется в документации и в стандартных ресурсах.