Есть ли способ определить Src ImageView в качестве идентификатора стиля

105
8

Я хотел бы изменить изображение в зависимости от темы (для режима "День-Ночь").

Я попытался создать идентификатор с именем "logo" в style.xml, который содержит ссылку для рисования для логотипа, и изменить его в соответствии со стилем, но я не знаю, как установить этот идентификатор в качестве источника ImageView.

В style.xml:

<resources>
<item type="drawable" name="logo"></item>
...
<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
<item name="logo">@drawable/logo</item>
...
<style name="AppThemeDark" parent="Theme.AppCompat.DayNight.NoActionBar">
<item name="logo">@drawable/logodark</item>
...
</resources>

Я не знаю, как бы я сослался на него в ImageView, поскольку intelisense не может найти какой-либо идентификатор "логотипа", когда я пытаюсь написать в "app: srcCompat", как вы можете видеть здесь.

Как я могу изменить источник ImageView в зависимости от темы?

спросил(а) 2020-04-04T01:49:55+03:00 5 месяцев, 4 недели назад
1
Решение
98

Неважно, только что узнал о оттенках.

Style.xml выглядит так

<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
...
<!-- This sets the image tint for the style. -->
<item name="android:tint">@color/colorPrimary</item>
...
</style>

ответил(а) 2020-04-04T02:01:27.763697+03:00 5 месяцев, 4 недели назад
-4
ответил(а) 2020-04-04T01:49:55+03:00 5 месяцев, 4 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема