Android заставит ImageView использовать ресурс темной темы

#android

Вопрос:

У меня есть раздел моего приложения, который должен быть в темной теме во время «приватного» режима, в то время как остальная часть приложения остается в светлой теме. Для большинства View s я устанавливаю оттенок динамически в зависимости от «приватного режима». У нас есть 1 ImageView , где я не могу установить оттенок (так как часть его имеет другой цвет). Есть ли способ ImageView динамически использовать ресурс темной темы?

Комментарии:

1. пожалуйста, можете показать нам, что вы пробовали?

2. Мой текущий план состоит в том, чтобы разделить темную и светлую темы на 2 отдельных ресурса изображений и установить их динамически, но это увеличивает размер приложения и его сложнее поддерживать. Я исследовал различные способы настройки темной темы, но они выполняются на уровне активности, что затрудняет установку только одного представления в темную тему.

Ответ №1:

Попробуйте установить атрибут темы представления, которое вы хотите использовать в темном режиме, чтобы понравиться

  theme="<dark theme>"
 

Это должно переопределить вашу тему по умолчанию

Если вы хотите изменить его во время выполнения, просто используйте переменную. Т. Е.

 if (isDarkMode) imageView.tint = Color.BLACK