Как стать автором
Обновить

«Поясняем за чёлку» в Android P. Что делать с Android Cutout?

Время на прочтение5 мин
Количество просмотров20K
Всего голосов 23: ↑23 и ↓0+23
Комментарии18

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

НЛО прилетело и опубликовало эту надпись здесь
Да, глупее пока сложно что-то придумать
По сути, если приложение не лезет под статус бар, то оно по умолчанию будет без ограниченной части верстаться
В основном зависит от windowActionBarOverlay флага, и других, типа windowActionBar, windowNoTitle, windowDrawsSystemBarBackgrounds, windowTranslucentStatus, windowIsTranslucent и их комбинаций
т.е дефолтное приложение без заморочек сверстается адекватно
На Huawei/Honor при открытии приложения — открывается запрос можно ли использовать весь экран, однако в некоторых приложениях (Microsoft RDP Client) без разрешения — скругляются углы.
на oneplus 6 так и есть. По умолчанию чёлка скрыта у всех приложений.
Я прошу прощения, а зачем нужна это 'чёлка' и есть ли в ней жизненная необходимость?
В данном случае я привожу примеры программной чёлки, она нужна только для того, чтобы понять, где могут быть проблемы на реальных девайсах с чёлкой.
На реальных девайсах же она будет аппаратная и в ней будет скрываться камера и разные датчики, т.е. там уже будет действительно недоступная зона экрана.
Есть ли в ней жизненная необходимость производители смартфонов уже решили и практически каждый новый анонсированный девайс ей оснащён. Пользоваться такими устройствами или нет — Ваш выбор. А вот поддерживать её в своём приложении или нет — думаю нет выбора, т.к. если где-то из-за неё едет вёрстка, то однозначно придётся.
Карго-культ, как он есть. Если вы сделаете на своём смартфоне чёлку, то ваша компания сразу подорожает до триллиона долларов.
НЛО прилетело и опубликовало эту надпись здесь
«Дизайнеры победили инженеров».
P.S. Надеюсь эта идея финансово провалится и больше не будет таких вырезаний какой-то части экрана.
«Поясняем за чёлку»

Перестаньте уже писать это «за» везде. Скучать за, пояснять за… Это не по-русски.
Перестаньте уже писать это «за» везде. Скучать за, пояснять за… Это не по-русски.




Вероятно, одна из причин того, что «карма потихоньку течёт» — это когда человек с явно нерусским ником типа Revertis даже находясь в Словакии не перестаёт поучать остальных русскому языку ;)
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Просто совсем не хочется, чтобы ИТ-сообщество превращалось в гопников и неформалов.
Такова жизнь, братан…
Вопрос не совсем про челку, но сам столкнулся с проблемой что при выставленном флаге setFitsSystemWindows = false ломается работа adjustResize
Гугл о баге знает с 2009 года — issuetracker.google.com/issues/36911528
Вы как-нибудь решали эту проблему?
Да, встречались с такой проблемой. Написали свой workaround, который слушал onGlobalLayout через ViewTreeObserver.OnGlobalLayoutListener и высчитывали высоту, которую можно использовать для верстки через getWindowVisibleDisplayFrame. И после расчёта прокидывали в качестве callback'а новую высоту и разницу в высотах всем слушателям. А они уже в свою очередь перерисовывались. Надеюсь будет полезно :)
Спасибо за ответ! Некоторое время такой фикс и у меня работал. Но, к сожалению, в таком способе стал сталкиваться с проблемой что на некоторых устройствах Samsung (S5, если это имеет значение) неверно определяется высота статусбара и фикс стал вычислять высоту некорректно.

В итоге получается что такой способ уж очень привязан к устройству и нет гарантии что на каком-нибудь китайце все опять не поедет)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий