Android - темный режим для пользовательских уведомлений - PullRequest
0 голосов
/ 06 октября 2019

У меня есть уведомление с пользовательским XML-макетом, поэтому я не могу использовать стили по умолчанию, такие как MessagingStyle или MediaStyle.

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

Я проверил исходный код MessagingStyle и MediaStyle, кажется, что DarkCerm BackgroundColor устанавливается самим Statusbar, при использовании этих стилей их нельзя извлечь из самого объекта уведомления(даже с Reflections)

Можно ли как-нибудь получить цвет фона?

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

Редактировать: даже правильные настройки цветов не помогают ... Уведомлениясветлый на экране блокировки и темный на панели уведомлений ...

1 Ответ

0 голосов
/ 23 октября 2019

кажется, что это проблема Samsung:

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

На устройствах Samsung уведомления также темные, но все еще белый в Lockscreen, поэтому, если вы установите цвет фона, он будет «неправильным» либо на экране блокировки, либо на панели уведомлений (вы всегда можете показать / отменить другое уведомление в заблокированном / разблокированном состоянии, что на самом деле не являетсяхорошее решение)

В любом случае, есть способ получить правильный цвет фона для устройств Samsung: на https://stackoverflow.com/a/7320604/1988378 объясняется, как получить цвет текста по умолчанию. Samsung инвертирует фон, так что фон в темном режиме - это цвет текста в светлом режиме.

...