169 похожих чатов

На эмуляторе не работает прозрачный status/navigation bar. На реальном девайсе

нет этого серого цвета поверх баров. С чем может быть связано?

29 ответов

20 просмотров

может версия апи анроида?

EvGem- Автор вопроса

Я был бы спокоен, если бы в других прилагах на эмуляторе прозрачность не работала бы, но она работает. На эмуле 11 андроид.

EvGem- Автор вопроса

В лаунчере все красиво-прозрачненько

Юзер же не на эмуляторе работать будет?

EvGem- Автор вопроса

Ну реальных девайсов у меня только два и они оба сяоми. Будет не очень если эта прозрачность будет работать только на этих девайсах.

Ну надо бы пачку девайсов иметь. У родственников порыться забрать отслужившие, в переходе по 2000р взять. Обязательно говнофон с экраном 720 на 480 и памятью 1 гб если найдешь. Планшет тоже Что то на каждый сдк от 21 до 30

1. Какая версия апи у эмулятора? 2. Приложенный код из корневого styles.xml?

EvGem- Автор вопроса

1. Эмулятор 30 апи. 2. Немного не понял вопрос. В прилаге только одна тема. Сейчас скину ее всю полностью.

А зачем цвет прозрачный? Может там под ним что-то серое. Попробуйте выставить другой цвет, чтобы проверить это.

EvGem- Автор вопроса

Хмм. Поставил красный цвет и для navigationBarColor и для statusBarColor. Никаких изменений, что на реальном устройстве, что на эмуляторе. Хмммм

styles.xml в папке values?

EvGem- Автор вопроса

Конечно

попробуйте-ка добавить colorPrimaryDark и его красным сделать

EvGem- Автор вопроса

Вообще все равно. Не понимаю что отвечает за цвет.

themes.xml в проекте нет?

EvGem- Автор вопроса

Тема внутри themes.xml. По идее же не имеет значения как называется файл с темой.

попробуйте еще убрать windowTranslucentStatus и второй для нав бара

Просто думал, что может как-то дубликат возник

EvGem- Автор вопроса

Да, без этих флагов для цвета статус бара применяется цвет colorPrimaryDark (стал красным) Навбар стал черным. Такое решение не подходит мне. У меня есть обработка insets. То есть некоторые вью у меня должны быть под статус/нав барами

Так может эти ваши вью и лезут на постоянной основе? Хотя непонятно, почему только в эмуляторе

А без colorPrimaryDark statusBarColor тоже красит?

EvGem- Автор вопроса

Да

EvGem- Автор вопроса

Для вью я просто паддинг добавляю в обработке инсетов. Вот можно видеть что именно имеется серая полоса поверх моих вью. И вообще непонятно что отвечает за ее цвет/показ.

Есть еще атрибут statusBarBackground. Попробуйте в нем поставить красный и включить оба ваших translucent. Погуглил, еще пишут, что translucents добавляют специальный background.

EvGem- Автор вопроса

Да, тоже про них подумал. Но не сработало. Ни statusBarBackground, ни statusBarForeground ни на что не повлияли.

Стикер

Думаю, что данная статья что-нибудь да прояснит https://medium.com/androiddevelopers/translucent-systembars-the-right-way-across-api-levels-and-themes-6d7ddda21396

EvGem- Автор вопроса

Да получилось. В коде: WindowCompat.setDecorFitsSystemWindows(window, false) В теме: <item name="android:statusBarColor">@android:color/transparent</item> <item name="android:navigationBarColor">#01000000</item> Причем для navigationBarColor нельзя ставить полносью прозрачный цвет. Видимо там стоит проверка на полную прозрачность и если альфа ровно ноль, то оно заменяет цвет на такой еле прозрачный белый. Если альфа чуть больше нуля, то оно такой фигней не занимается.

EvGem- Автор вопроса

Недочитал статью. Необязательно ставить цвет навбара как #01000000 Чтобы выключить проверку, на которую я наткнулся, нужно выставить так: <item name="android:enforceNavigationBarContrast" tools:targetApi="q">false</item> Весьма забавная у них проверка на контраст)) Просто проверяют, что альфа == 0

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Карта сайта