Можно ли динамически изменять цвет ON виджета Switch? - PullRequest
0 голосов
/ 06 мая 2019

Я создаю приложение, в котором я хочу дать пользователю возможность изменить некоторые цвета.

Вот как выглядит приложение: https://imgur.com/STqHZmW

Я хочу "Цвет «Аспект» для определения цвета «Уведомления» Switch.Я знаю, как установить его на другой при запуске, но я не могу найти способ сделать это динамически.Я даже не знаю, возможно ли это, но любая помощь будет очень признательна.

Спасибо.

1 Ответ

0 голосов
/ 06 мая 2019

Единственный способ сделать это - использовать селекторы и стили. Некоторое время назад я столкнулся с тем же препятствием.Я полагаю, что вы используете цвет аспекта для оттенка виджетов.

Здесь - это способ создания селектора.

Проблема с селекторами состоит в том, что они состоят издва изображения, которые переключаются в зависимости от состояния переключения.Кроме того, у них нет доступных свойств оттенка.Вы должны сделать множество селекторов для каждого цвета доступными в опции аспекта, а затем установить их для каждой темы.Затем вам нужно переключить тему во время выполнения с помощью:

setTheme(android.R.style.Theme_Dark);

Возможно, есть новая кнопка переключения или пользовательский виджет, который позволяет вам сделать это, но я не знаю, существует ли она.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...