Щелкните значок шестеренки, чтобы перейти к настройкам системы. Теперь перейдите в настройки «Дисплей». Ищите «Размер экрана» или «Масштаб экрана». Переместите точку на шкале внизу экрана, чтобы настроить размер.
Как увеличить строку состояния на моем Samsung?
Старший член
- Перейдите в «Параметры разработчика»
- Перейдите к «Имитация отображения с вырезом»
- Выберите «вырез водопада»
- Вы увидите, что экран выглядит узким с вырезом «водопад», но значок на Строка состояния становиться больший, …
- Перезагрузите телефон.
- Затем вернитесь к «Моделировать отображение с вырезом».
- Изменить на «По умолчанию»
Изменение строки состояния вручную
- Потяните ползунок под строкой состояния.
- В правом верхнем углу нажмите на три вертикальные точки.
- Выберите строку состояния.
- Здесь вы можете выбрать, хотите ли вы иметь только 3 недавних уведомления или все уведомления. Вы даже можете выбрать отображение процента заряда батареи.
Как изменить настройки строки состояния?
Как настроить строку состояния на Android?
- Откройте настройки вашего телефона.
- Перейти к дисплею.
- Прокрутите вниз и нажмите на строку состояния.
- Здесь вы можете сделать процент заряда батареи видимым или скрыть его, вы также можете включить отображение скорости сети в строке состояния.
Как восстановить строку состояния?
Скрытая строка состояния может находиться в Настройки> Дисплей, или в настройках лаунчера. Настройки> Лаунчер. Вы можете попробовать скачать лаунчер, например Nova. Это может привести к возврату строки состояния.
Какие значки в строке состояния Android?
Что такое значки строки состояния Android? Значки в строке состояния Android просто уведомления в пользовательском интерфейсе системы от приложений, запущенных на вашем устройстве. Эти уведомления могут содержать текст, графику и даже элементы управления.
Как добавить быстрые настройки в строку состояния?
Как настроить плитки быстрых настроек на панели быстрых настроек. Чтобы выбрать, какие ярлыки быстрых настроек вы хотите отображать, когда вы опускаете шторку уведомлений Android, потяните панель уведомлений, коснитесь шестеренки настроек, коснитесь System UI Tuner, который вы включили на предыдущем шаге, и выберите САЙТ настройки.
Почему исчезла панель уведомлений?
Перейдите в настройки Nova — внешний вид и убедитесь, что опция «Показывать панель уведомлений» включена. Перейдите в настройки Nova — внешний вид и убедитесь, что опция «Показывать панель уведомлений» включена. Спасибо за ответ. Я только что проверил, и он включен.
Как показать сообщения в панели уведомлений?
Настройки уведомлений о текстовых сообщениях — Android ™
- В приложении для обмена сообщениями коснитесь значка меню.
- Нажмите «Настройки» или «Сообщения».
- Если возможно, нажмите «Уведомления» или «Настройки уведомлений».
- Настройте следующие параметры полученных уведомлений по своему усмотрению:…
- Настройте следующие параметры мелодии звонка:
Как включить панель уведомлений на Android?
На главном экране коснитесь и удерживайте панель уведомлений в верхней части экрана и перетащите ее вниз, чтобы открыть панель уведомлений. Коснитесь значка настроек, чтобы перейти в меню настроек вашего устройства. Прикоснитесь к Панель быстрой настройки значок настроек, чтобы открыть панель быстрых настроек.
Интерфейс каждого смартфона на Android состоит из множества элементов. Каждый из них имеет определенное место и предназначается для конкретных целей. Вместе с тем смысл некоторых элементов остается непонятен рядовому пользователю. В частности, о таком компоненте, как строка состояния на операционной системе Андроид, многие слышали, но не все понимают ее значимость. Разберем функциональность этого элемента, а также тонкости его настройки.
Что это такое и где находится
Строка состояния (Status Bar) – это область уведомлений, расположенная в верхней части экрана. Некоторые пользователи путают ее с центром уведомлений, который вызывается свайпом сверху вниз, однако это два разных элемента интерфейса.
Строка показывает различные иконки, демонстрирующие главную информацию, которая может понадобиться владельцу смартфона вне зависимости от сценария использования устройства. По умолчанию здесь можно увидеть:
- текущее время;
- заряд аккумулятора;
- качество приема сети;
- тип подключения (например, 3G или 4G).
Опционально здесь появляются другие значки. К примеру, пользователь может настроить отображение статистики потребления трафика. А еще в строке состояния появляются иконки в зависимости от подключенных интерфейсов. Так, здесь можно встретить значки:
- Wi-Fi;
- будильника;
- Bluetooth;
- беззвучного режима;
- режима «В самолете».
Наличие той или иной иконки свидетельствует об активности определенного режима. Так, если вы видите в строке состояния изображение в виде часов – значит, у вас настроен будильник. Соответственно, значок Bluetooth будет говорить об активности этого датчика, а изображение самолете символизирует включение одноименного режима связи.
Как убрать?
Несмотря на то, что верхняя строчка является важным элементом интерфейса Андроид, некоторым пользователям она мешает. К сожалению, полностью выключить строку состояния нельзя. Зато вы можете изменить этот интерфейс, убрав уведомления:
- Откройте настройки телефона.
- Перейдите в раздел «Уведомления и Центр управления», а затем – «Строка состояния».
- Напротив пункта «Значки уведомлений» передвиньте ползунок в левую сторону.
После выполнения указанных действий на ваш телефон не перестанут приходить уведомления. Просто они не будут отображаться в верхней строке. То есть вы сможете ознакомиться с ними через центр уведомлений. Кроме того, никуда не денутся часы, а также значки заряда аккумулятора и качества приема сети.
Настройка строки
Вы можете не только убрать уведомления, но и настроить другие компоненты строки состояния через настройки телефона. К примеру, на устройствах Xiaomi для изменения доступны следующие параметры:
- значки уведомлений;
- скорость сети;
- имя оператора;
- тип индикатора батареи;
- скрытие выреза.
То есть вы можете изменить значок, символизирующий уровень заряда, а также включить или выключить отображение скорости потребления данных при подключении к интернету. На некоторых моделях также есть возможность увеличить или уменьшить иконки. Но ни один смартфон не позволит вам полностью отказаться от верхней строчки, как бы вы этого ни хотели.
Что делать, если не открывается верхняя панель на Андроиде
Столкнувшись с подобной проблемой, сначала вы должны выяснить, тот ли элемент интерфейса вы понимаете под строкой состояния. Напомним, что многие путают его с центром уведомлений. Status Bar – это верхняя прозрачная полоска, которая отображается на каждом экране смартфона, будь то рабочий стол или меню настроек.
В то же время она может быть скрыта в играх с целью оптимизации процесса гейминга. Чтобы получить доступ к основным значкам, вам потребуется сделать короткий свайп от верхней части экрана вниз. Тогда вы сможете ознакомиться с зарядом аккумулятора и другими параметрами.
Если же Status Bar не отображается даже на главном экране, не говоря уже о сторонних приложениях, то для решения проблемы рекомендуется действовать по инструкции:
- Откройте настройки Status Bar и убедитесь, что у вас активировано отображение всех необходимых компонентов.
- Если вы пользуетесь смартфоном с вырезом под фронтальную камеру, то обязательно проверьте настройки выреза. Иногда компоненты верхней строчки могут скрываться вместе с камерой.
- Перезагрузите смартфон и проверьте, не исчезнет ли проблема.
- Если ничего из вышеперечисленного не помогает, то единственным вариантом проблемы будет сброс телефона до заводских настроек. В ходе выполнения этой операции будут удалены все файлы, а потому важно заблаговременно позаботиться о создании резервной копии.
Чаще всего проблема заключается в неправильно выставленных настройках Status Bar. Поэтому внимательно проверьте параметры, которые предлагает производитель смартфона.
ОС Android — лучший вариант, позволяющий пользователю настраивать интерфейс. В основном это можно сделать двумя способами. Как пользователь вы получаете доступ супер пользователя или используете сторонние приложения из Play Store.
Когда мы говорим о доступе супер пользователя, мы имеем в виду рутирование устройства. Этот процесс не так прост для тех, кто не спешит по техническим причинам. Нет, я не хочу обидеть, но мы получаем тысячи сообщений, в которых люди пытаются рутировать свои устройства и в конечном итоге блокируют их.
Итак, следующая альтернатива — использовать сторонние приложения, которые упрощают настройку. Все, что вам нужно сделать, это переключить несколько настроек в приложении, и вы сразу же увидите, как происходит настройка.
В этом руководстве мы попытаемся изменить строку состояния устройства Android с помощью популярного стороннего приложения. Этот процесс не будет включать в себя сложный процесс, такой как рутирование телефона. Это очень легко настроить строку состояния Android устройства , и мы расскажем вам , как сделать это.
Теперь вы можете подумать, какое приложение, о котором мы упоминали выше, можно использовать для настройки строки состояния Android-устройства. Приложение называется Super Status Bar .
В этом посте мы разместили официальную ссылку для скачивания из магазина игр . Обычная версия бесплатна и позволяет выполнять базовые настройки.
Существует профессиональная версия приложения, которая будет стоить вам немного денег. По сути, премиум-версия позволит гораздо больше настраивать вашу строку состояния. Это позволит вам изменить внешний вид строки состояния как у интерфейса iOS или MIUI. Бесплатная версия допускает настройку только на базе Android 9.0 Pie и Android 10.
Вот ссылка для скачивания приложения.
Функции
Вот краткая информация об основных функциях этого приложения.
После того, как вы установите и откроете приложение, должна появиться кнопка Пуск . Нажмите на него. Это в основном приведет вас к экрану, где вы можете включить изменение системных настроек и службу доступности.
Проверить это | Как изменить качество загрузки музыки в Spotify
Настройка строки состояния устройства Android
Итак, поскольку мы будем изменять строку состояния, давайте посмотрим, что мы можем сделать.
На главном экране приложения убедитесь, что Пуск включен. Вы должны увидеть такие параметры, как Жесты, Индикатор, Главный слайдер, Текст тикера, Строка состояния и т. д.
Нажмите на строку состояния, поскольку мы собираемся ее настроить.
Здесь столько вариантов. Мы обсудим их один за другим в порядке их присутствия в разделе «Строка состояния».
Сначала проверьте под CUSTOM .
Стиль
По сути, вы получаете 4 варианта оформления строки состояния. Это варианты на выбор в стиле Android 9.0 Pie. Строка состояния в стиле Android 10, iOS и MIUI.
Если вы используете бесплатную версию приложения, поддерживаются только Android 9.0 Pie и Android 10. Для стиля iOS или MIUI вам необходимо перейти на премиум-версию приложения.
Цвета
Настройка цвета доступна для премиум-пользователей. Вы можете установить цвет фона по своему усмотрению. По умолчанию цвет фона черный, а цвет акцента — белый.
Системные значки
Вот длинный список элементов, которые вы можете выбрать для отображения в строке состояния. Он присутствует в виде флажков. Просто нажмите на флажок рядом с элементом, чтобы включить его присутствие в строке состояния.
Порядок Товаров
Это означает, что вы можете изменить способ отображения системных значков в строке состояния. Это означает, хотите ли вы, чтобы часы шли влево, а процент заряда батареи — вправо.
Это можно сделать, просто перетащив параметры. Единственный поворот в том, что эта функция предназначена для пользователей Premium.
Поддержка двух SIM-карт
Это означает, что у вас может быть одна и та же настроенная строка состояния на любой из двух SIM-карт, которые вы используете.
24-часовые часы
Это простая функция, которая позволяет вам переключаться между 12-часовым форматом времени и 24-часовым форматом часов в настраиваемой строке состояния.
Так после настройки должна выглядеть строка состояния. Я следую стилю Android 10 вместе с настраиваемым индикатором уровня заряда батареи.
Отказ от ответственности
Пользовательская строка состояния может не работать, если вам нужно использовать приложение в ландшафтном режиме, например, играть в игры. Лично я не мог использовать внутриигровые параметры в верхней части экрана, когда это приложение было активным.
Если вы заинтересованы в том, чтобы опробовать настройку своих устройств, попробуйте это. Надеемся, вам понравилось это руководство.
Для меня кастомизация Android всегда была чем-то далёким и откровенно гиковским. Ну зачем, думал я, что-то менять, если разработчики – явно неглупые люди – всё уже продумали за меня? Долгое время меня вполне устраивала моя позиция, и желания что-либо менять в интерфейсе своего смартфона у меня не было, тем более что обычно для этого приходилось что-то перепрошивать или устанавливать сторонние моды. Однако я немного изменил своё отношение к такому явлению, как кастомизация, когда познакомился с приложением Super Status Bar.
Не устраивает статус-бар на Android? Кастомизируйте его
Как со смартфона смотреть животных в 3D из Google
Это приложение, как ясно из названия, позволяет настроить статус-бар Android-смартфона так, как хочется именно вам. На самом деле сначала меня привлекла только функция блокировки смартфона по двойному нажатию на верхнюю часть экрана, однако довольно быстро стало понятно, что эта программа может сильно улучшить такой незначительный, на первый взгляд, компонент операционной системы, как статус-бар.
Разрешения на Android
Приложение запросит две привилегии — дайте их
Для начала вам потребуется дать Super Status Bar две привилегии: возможность изменять настройки и открыть доступ к службе специальных возможностей. Это необходимо для того, чтобы приложение смогло вносить изменения в статус-бар и расширить его функциональность.
Как на Android посмотреть YouTube-видео, которое заблокировано в вашем регионе
После того, как разрешения будут даны, вернитесь на домашний экран. Здесь вы увидите 7 вкладок, в которых скрываются настройки статус-бара. Забегая вперёд, скажу, что не советую включать сразу все параметры, во-первых, чтобы не запутаться, а, во-вторых, чтобы не перегрузить его.
Как можно заблокировать Android-смартфон
Первое, что я сделал, это включил возможность блокировать смартфон по двойному тапу на статус-бар. Для этого откройте вкладку «Жесты» — «Двойное нажатие» и активируйте параметр «Выключить экран». После этого вы сможете быстро и непринуждённо гасить экран, не задействуя физическую клавишу питания. Это очень удобно в ситуациях, когда смартфон лежит на столе, а возможности взять его в руки по какой-то причине у вас нет, либо если боковая клавиша включения и выключения сломалась.
Управлять статус-баром при помощи жестов реально удобно
Затем я настроил изменение яркости дисплея жестом скольжения вправо или влево по статус-бару. Как оказалось, это очень классная возможность, которой мне очень давно не хватало, ведь в помещении мне всегда было много максимальной яркости моего Honor View 20, и мало – на улице. Для активации этого механизма перейдите во вкладку «Жесты» и включите параметр «Скольжение». Здесь же можно настроить вызов конкретных приложений с помощью жестов, но, на мой взгляд, это было бы уже чересчур.
Как изменить статус-бар на Android
На Android можно заменить привычный статус-бар на решение из iOS
Скажу честно, мне никогда не нравились иконки в статус-баре на Android и всегда нравилась реализация iOS. Поэтому для меня стал позитивным открытие тот факт, что Super Status Bar позволяет заменить классический статус-бар Android решением, используемым в iOS. Для этого перейдите во вкладку «Статус-бар» — «Стиль» и выберите понравившийся. Кроме iOS, тут есть статус-бары из Android 10, Android 9 Pie и MIUI. Правда, учитывайте, что такая рокировка доступна только в платной версии приложения, за которую придётся заплатить 189 рублей.
Как на Android переключать песни длительным нажатием на кнопки регулировки громкости
Если вам не нравится, как реализованы уведомления на Android, Super Status Bar и тут придёт вам на помощь. Он позволяет заблокировать появление всплывающих окон с оповещениями, заменив их бегущей строкой с содержимым послания. Для этого откройте вкладку «Текст в строке» и включите параметр «Бегущий текст в статус-баре». Тут же можно настроить скорость анимации бегущего текста, начальную задержку перед его появлением, изменить фон, на котором он будет появляться и настроить стилистику появления текста.
Уведомления бегущей строкой воспринимаются реально удобнее
Super Status Bar – их тех приложений, которые запускаются один раз. А ведь и правда, если можно сразу настроить все конфигурации статус-бара, то зачем открывать его повторно и вносить какие-то изменения? По крайней мере, я так решил для себя, включив все нужные мне параметры. Попробуйте и вы. Думаю, вам понравится.
Скачать Super Status Bar
Оглавление
- Вступление
- Super Status Bar
- Знакомство
- Начало работы
- Настройки
- Тестирование
- Выводы
- Omega StatusBar
- Знакомство
- Начало работы
- Настройки
- Тестирование
- Выводы
- Material Status Bar
- Знакомство
- Начало работы
- Настройки
- Тестирование
- Выводы
Вступление
Внешний вид OC Android меняется очень неспешно, при этом количество параметров по настройке оформления оставляет желать лучшего. Благо операционная система является открытой и для нее существует множество приложений, в числе которых есть и решения, предназначенные для изменения внешнего вида.
С выбором лучшей оболочки для android-устройств мы уже разобрались, да и обзор приложений с обоями тоже был. Что же еще можно изменить в интерфейсе системы? Помимо значков и иконок можно изменить «статус-бар».
В данном материале мы познакомимся с тремя приложениями. Два из них – Super Status Bar и Omega StatusBar – ветераны данной категории, которые появились в далеких 2011-2012 годах, третье – Material Status Bar – современное решение. Дадут ли «ветераны» отпор новичку или все-таки года берут свое? Рассмотрим всех участников внимательнее и сделаем конкретные выводы в каждом случае.
В качестве тестового оборудования использовались следующие устройства: смартфоны Xiaomi Redmi Note 3 Pro (OC Android 6.0.1, MIUI 8, процессор Snapdragon 650 64 бит, 6 х 1800 МГц, видеосопроцессор Adreno 510, 2 Гбайта ОЗУ) и Jinga Basco M500 3G (OC Android 5.1, процессор MediaTek MT6580, 4 х 1300 МГц, видеосопроцессор Mali-400 MP2, 1 Гбайт ОЗУ), планшет Samsung Galaxy Tab 2 7.0 (CM 13 на базе OC Android 6.0.1, процессор TI OMAP 4430, 2 x 1200 МГц, видеосопроцессор PowerVR 540, 384 МГц, 1 Гбайт ОЗУ).
Super Status Bar
рекомендации
-17% на RTX 4070 Ti в Ситилинке
3080 дешевле 70 тр — цены снова пошли вниз
Ищем PHP-программиста для апгрейда конфы
3070 Gainward Phantom дешевле 50 тр
13700K дешевле 40 тр в Регарде
16 видов <b>4070 Ti</b> в Ситилинке — все до 100 тр
3060 дешевле 30тр в Ситилинке
3070 Ti дешевле 60 тр в Ситилинке
3070 Gigabyte Gaming за 50 тр с началом
Компьютеры от 10 тр в Ситилинке
3070 дешевле 50 тр в Ситилинке
MSI 3050 за 25 тр в Ситилинке
3060 Gigabyte Gaming за 30 тр с началом
13600K дешевле 30 тр в Регарде
4080 почти за 100тр — дешевле чем по курсу 60
-19% на 13900KF — цены рухнули
12900K за 40тр с началом в Ситилинке
RTX 4090 за 140 тр в Регарде
3060 Ti Gigabyte за 42 тр в Регарде
Знакомство
Изменить статус-бар можно было еще в далеком 2011 году, а стало это возможным благодаря новичку-первопроходцу – приложению Super Status Bar. Но актуальна ли сейчас спустя пять лет данная программа?
Начало работы
После запуска Super Status Bar нас поприветствуют и перекинут на главный экран, не тратя лишнее время на ввод в курс дела и обучение, что не есть хорошо.
Мы практически сразу замечаем ползунок-активатор в правой части экрана и смело переключаем его в активный режим. После чего приложение попросит активировать его в разделе «Специальные возможности» для предоставления программе расширенных прав, затем появится наш новый «статус-бар».
В отличии от стандартного он имеет другой внешний вид, фон и другое размещение элементов.
Все вышеперечисленное можно подробно настраивать. Например, мы можем переместить часы в центр экрана, как на iPhone, индикатор заряда аккумулятора батареи представить в виде процентов, а значок с приемом сотовой сети вообще убрать ради экономии места. Возможно даже отображение погоды!
Имеются и другие параметры по настройке внешнего вида, например, «iLlusory Fon» — прозрачный фон, установка своего изображения или отдельного цвета в качестве фона «статус-бара». Правда ни на одном из тестовых устройств функция не работала должны образом…
Еще в данном меню дополнительно можно активировать автоматический запуск программы при включении девайса и отображение уведомлений.
«Статус-бар» вы уже видели, далее же я предлагаю взглянуть на шторку с уведомлениями, так как благодаря данному приложению она тоже меняется. Тянем панель вниз и вуаля! У нас кардинально изменилось внутреннее меню. Теперь оно делится на две части – уведомления и наиболее используемые приложения, а также дополняется «включателями» параметров и даже виджетами, но только в премиум версии утилиты Super Status Bar.
В платной версии Super Status Bar есть также поддержка тем. Их чуть более десятка, и они неплохо смогут преобразить внешний вид вашего гаджета.
Настройки
Что касается настроек, то их не так много и их все мы перечислили по ходу ознакомления с приложением.
Тестирование
| Версия приложения |
0.16.7.4 |
| Размер дистрибутива |
3 Мбайта |
| Размер приложения в установленном виде |
6 Мбайт |
| Потребление ОЗУ |
40-50 Мбайт |
Несмотря на то, что ранее Super Status Bar поддерживал устройства с OC Android 2.1, то теперь программа работает только с OC Android 4.0 и более свежими версиями систем. Виной тому наличие функции с прозрачной шторкой.
За время использования Super Status Bar у меня было несколько проблем: критические ошибки при открытии параметров приложения (решается установкой более старых версии), периодическое зависание программы, некорректность функции «прозрачный фон» и невозможность закрытия шторки нажатием на клавишу «назад». Немало проблем с приложением, немало…
Super Status Bar адекватно работает с планшетами на OC Android 4.4 и новее.
Выводы
Если раньше Super Status Bar был единственным вариантом для смены «статус-бара», то теперь программу можно записать в аутсайдеры. Ведь она потеряла свою актуальность, последнее обновление было в 2015 году, и оно не касалось обновления дизайна или добавления новых фишек. К тому же программа не очень хорошо сочетается с Material Design и работает довольно-таки посредственно.
Если суммировать все основные моменты по приложению Super Status Bar, то его сложно советовать, а тем более покупать премиум-версию.
![]() |
Скачать Super Status Bar для android-устройств из Google Play |
| Разработчик | FireZenk. |
| Стоимость | Super Status Bar – бесплатно, расширенная версия версия – $1.99. |
| Требования | Для OC Android 4.0 и новее. |
Asked
12 years, 6 months ago
Viewed
428k times
What’s the height of the status bar in Android? Is it always the same?
From my measurements it seems that it’s 25dp, but I’m not sure if it has the same height on all platforms.
(I want to know this to properly implement a fade transition from an activity that doesn’t have status bar to one that does)
asked Aug 4, 2010 at 15:44
hpiquehpique
118k131 gold badges336 silver badges472 bronze badges
2
this question was answered before…
Height of statusbar?
Update::
Current method:
ok, the height of the status bar depends on the screen size, for example in a device
with 240 X 320 screen size the status bar height is 20px, for a device with 320 X 480 screen size the status bar height is 25px, for a device with 480 x 800 the status bar height must be 38px
so i recommend to use this script to get the status bar height
Rect rectangle = new Rect();
Window window = getWindow();
window.getDecorView().getWindowVisibleDisplayFrame(rectangle);
int statusBarHeight = rectangle.top;
int contentViewTop =
window.findViewById(Window.ID_ANDROID_CONTENT).getTop();
int titleBarHeight= contentViewTop - statusBarHeight;
Log.i("*** Elenasys :: ", "StatusBar Height= " + statusBarHeight + " , TitleBar Height = " + titleBarHeight);
(old Method) to get the Height of the status bar on the onCreate() method of your Activity, use this method:
public int getStatusBarHeight() {
int result = 0;
int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
result = getResources().getDimensionPixelSize(resourceId);
}
return result;
}
answered Aug 4, 2010 at 22:02
JorgesysJorgesys
123k23 gold badges328 silver badges264 bronze badges
18
Out of all the code samples I’ve used to get the height of the status bar, the only one that actually appears to work in the onCreate method of an Activity is this:
public int getStatusBarHeight() {
int result = 0;
int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
result = getResources().getDimensionPixelSize(resourceId);
}
return result;
}
Apparently the actual height of the status bar is kept as an Android resource. The above code can be added to a ContextWrapper class (e.g. an Activity).
Found at http://mrtn.me/blog/2012/03/17/get-the-height-of-the-status-bar-in-android/
answered Jan 8, 2013 at 10:35
Ben ClaytonBen Clayton
80.2k26 gold badges119 silver badges128 bronze badges
5
Hardcoding the size or using reflection to get the value of status_bar_height is considered bad practice. Chris Banes talked about this in at the Droidcon New York. The recommended way of getting the status bar size is via the OnApplyWindowInsetsListener:
myView.setOnApplyWindowInsetsListener { view, insets -> {
val statusBarSize = insets.systemWindowInsetTop
return insets
}
This was added in API 20 and is also backported via ViewAppCompat.
answered Nov 5, 2017 at 19:19
NiklasNiklas
22.2k32 gold badges127 silver badges166 bronze badges
6
On MDPI devices, the status bar is 25px. We can use this as the base and multiply it by the density (rounded up) to get the status bar height on any device:
int statusBarHeight = Math.ceil(25 * context.getResources().getDisplayMetrics().density);
For reference: ldpi=.75, mdpi=1, hdpi=1.5, xhdpi=2
answered Oct 4, 2011 at 5:30
3
I’ve merged some solutions together:
public static int getStatusBarHeight(final Context context) {
final Resources resources = context.getResources();
final int resourceId = resources.getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0)
return resources.getDimensionPixelSize(resourceId);
else
return (int) Math.ceil((VERSION.SDK_INT >= VERSION_CODES.M ? 24 : 25) * resources.getDisplayMetrics().density);
}
another alternative:
final View view = findViewById(android.R.id.content);
runJustBeforeBeingDrawn(view, new Runnable() {
@Override
public void run() {
int statusBarHeight = getResources().getDisplayMetrics().heightPixels - view.getMeasuredHeight();
}
});
EDIT: Alternative to runJustBeforeBeingDrawn: https://stackoverflow.com/a/28136027/878126
answered Mar 10, 2015 at 14:07
android developerandroid developer
115k143 gold badges719 silver badges1244 bronze badges
2
According to Material Guidance; height of status bar is 24 dp.
If you want get status bar height in pixels you can use below method:
private static int statusBarHeight(android.content.res.Resources res) {
return (int) (24 * res.getDisplayMetrics().density);
}
which can be called from activity with:
statusBarHeight(getResources());
answered Sep 17, 2015 at 7:03
RashidRashid
1,45516 silver badges16 bronze badges
4
The default height used to be 25dp. With Android Marshmallow (API 23) the height was reduced to 24dp.
Update: Please be aware that since the age of notches and punch-whole-cameras began, using a static height for the status bar no longer works. Please use window insets instead!
answered Apr 27, 2016 at 12:52
crysxdcrysxd
3,16319 silver badges32 bronze badges
1
this also work with the refrence link
public int getStatusBarHeight() {
int result = 0;
int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
result = getResources().getDimensionPixelSize(resourceId);
}
return result;
}
answered May 13, 2013 at 13:55
Parag ChauhanParag Chauhan
35.5k13 gold badges86 silver badges95 bronze badges
0
Official height is 24dp,
as is stated officially by Google on Android Design webpage.
answered Jun 24, 2015 at 15:15
Joaquin IurchukJoaquin Iurchuk
5,3491 gold badge47 silver badges64 bronze badges
0
I have the same problem of having to get the status bar height in an onCreate. This works for me.
private static final int LOW_DPI_STATUS_BAR_HEIGHT = 19;
private static final int MEDIUM_DPI_STATUS_BAR_HEIGHT = 25;
private static final int HIGH_DPI_STATUS_BAR_HEIGHT = 38;
Inside the onCreate:
DisplayMetrics displayMetrics = new DisplayMetrics();
((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay().getMetrics(displayMetrics);
int statusBarHeight;
switch (displayMetrics.densityDpi) {
case DisplayMetrics.DENSITY_HIGH:
statusBarHeight = HIGH_DPI_STATUS_BAR_HEIGHT;
break;
case DisplayMetrics.DENSITY_MEDIUM:
statusBarHeight = MEDIUM_DPI_STATUS_BAR_HEIGHT;
break;
case DisplayMetrics.DENSITY_LOW:
statusBarHeight = LOW_DPI_STATUS_BAR_HEIGHT;
break;
default:
statusBarHeight = MEDIUM_DPI_STATUS_BAR_HEIGHT;
}
See:
http://developer.android.com/reference/android/util/DisplayMetrics.html
http://developer.android.com/guide/practices/ui_guidelines/icon_design.html
answered Feb 1, 2011 at 17:32
benhylaubenhylau
4305 silver badges9 bronze badges
3
Kotlin version that combines two best solutions
fun getStatusBarHeight(): Int {
val resourceId = resources.getIdentifier("status_bar_height", "dimen", "android")
return if (resourceId > 0) resources.getDimensionPixelSize(resourceId)
else Rect().apply { window.decorView.getWindowVisibleDisplayFrame(this) }.top
}
- Takes
status_bar_heightvalue if present - If
status_bar_heightis not present, calculates the status bar height from Window decor
answered May 23, 2020 at 8:25
tomrozbtomrozb
25.4k31 gold badges97 silver badges121 bronze badges
2
Yes when i try it with View it provides the result of 25px.
Here is the whole code :
public class SpinActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LinearLayout lySpin = new LinearLayout(this);
lySpin.setOrientation(LinearLayout.VERTICAL);
lySpin.post(new Runnable()
{
public void run()
{
Rect rect = new Rect();
Window window = getWindow();
window.getDecorView().getWindowVisibleDisplayFrame(rect);
int statusBarHeight = rect.top;
int contentViewTop =
window.findViewById(Window.ID_ANDROID_CONTENT).getTop();
int titleBarHeight = contentViewTop - statusBarHeight;
System.out.println("TitleBarHeight: " + titleBarHeight
+ ", StatusBarHeight: " + statusBarHeight);
}
}
}
}
avh4
2,6151 gold badge21 silver badges25 bronze badges
answered Jan 28, 2011 at 19:54
BrajBraj
1311 silver badge2 bronze badges
2
240×320 — 20px
320×480 — 25px
480×800+ — 38px
answered Nov 18, 2010 at 14:35
DenisDenis
4236 silver badges14 bronze badges
1
Try this:
Rect rect = new Rect();
Window win = this.getWindow();
win.getDecorView().getWindowVisibleDisplayFrame(rect);
int statusBarHeight = rect.top;
int contentViewTop = win.findViewById(Window.ID_ANDROID_CONTENT).getTop();
int titleBarHeight = contentViewTop - statusBarHeight;
Log.d("ID-ANDROID-CONTENT", "titleBarHeight = " + titleBarHeight );
it didn’t work for me in the onCreate method for the activity, but did when I put it in an onClickListener and gave me a measurement of 25
answered Aug 4, 2010 at 16:19
MartynMartyn
16.3k24 gold badges71 silver badges104 bronze badges
1
the height of the status bar is 24dp in android 6.0
<!-- Height of the status bar -->
<dimen name="status_bar_height">24dp</dimen>
<!-- Height of the bottom navigation / system bar. -->
<dimen name="navigation_bar_height">48dp</dimen>
you can find the answer in the source code: frameworksbasecoreresresvaluesdimens.xml
answered Dec 12, 2016 at 9:51
xiaoyuan huxiaoyuan hu
1652 silver badges2 bronze badges
1
To solve this, I used a combination approach.
This is necessary as on tablets the system bar already subtracts it’s pixels when display.getHeight() is called.
So I first check if a system bar is present, and then Ben Claytons approach, which works fine on phones.
public int getStatusBarHeight() {
int statusBarHeight = 0;
if (!hasOnScreenSystemBar()) {
int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
statusBarHeight = getResources().getDimensionPixelSize(resourceId);
}
}
return statusBarHeight;
}
private boolean hasOnScreenSystemBar() {
Display display = getWindowManager().getDefaultDisplay();
int rawDisplayHeight = 0;
try {
Method getRawHeight = Display.class.getMethod("getRawHeight");
rawDisplayHeight = (Integer) getRawHeight.invoke(display);
} catch (Exception ex) {
}
int UIRequestedHeight = display.getHeight();
return rawDisplayHeight - UIRequestedHeight > 0;
}
answered Jun 16, 2013 at 20:58
RutgerRutger
3233 silver badges8 bronze badges
0
Thanks to @Niklas +1 this is the correct way to do it.
public class MyActivity extends Activity implements android.support.v4.View.OnApplyWindowInsetsListener {
Rect windowInsets;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.my_activity);
View rootview = findViewById(android.R.id.content);
android.support.v4.View.ViewCompat.setOnApplyWindowInsetsListener(rootview, this);
}
android.support.v4.View.WindowInsetsCompat android.support.v4.View.OnApplyWindowInsetsListener.OnApplyWindowInsets(View v, android.support.v4.View.WindowInsetsCompat insets)
{
windowInsets = new Rect();
windowInsets.set(insets.getSystemWindowInsetLeft(), insets.getSystemWindowInsetTop(), insets.getSystemWindowInsetRight(), insets.getSystemWindowInsetBottom());
//StatusBarHeight = insets.getSystemWindowInsetTop();
//Refresh/Adjust view accordingly
return insets;
}
}
Please excuse me if the code isn’t 100% correct, converted it from Xamarin C# but this is the just of it. Works with Notches, etc.
answered May 20, 2019 at 8:54
PierrePierre
8,0574 gold badges62 silver badges79 bronze badges
Toggled Fullscreen Solution:
This solution may look like a workaround, but it actually accounts for whether your app is fullscreen (aka hiding the status bar) or not:
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point(); display.getSize(size);
int barheight = size.y - findViewById(R.id.rootView).getHeight();
This way, if your app is currently fullscreen, barheight will equal 0.
Personally I had to use this to correct absolute TouchEvent coordinates to account for the status bar as so:
@Override
public boolean onTouch(View view,MotionEvent event) {
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point(); display.getSize(size);
int YCoord = (int)event.getRawY() - size.y + rootView.getHeight());
}
And that will get the absolute y-coordinate whether the app be fullscreen or not.
Enjoy
answered Apr 7, 2015 at 23:00
Aaron GillionAaron Gillion
2,1773 gold badges18 silver badges30 bronze badges
1
The reason why the top answer does not work for some people is because you cannot get the dimensions of a view until it is ready to render. Use an OnGlobalLayoutListener to get said dimensions when you actually can:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ViewGroup decorView = (ViewGroup) this.getWindow().getDecorView();
decorView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
if (Build.VERSION.SDK_INT >= 16) {
decorView.getViewTreeObserver().removeOnGlobalLayoutListener(this);
} else {
// Nice one, Google
decorView.getViewTreeObserver().removeGlobalOnLayoutListener(this);
}
Rect rect = new Rect();
decorView.getWindowVisibleDisplayFrame(rect);
rect.top; // This is the height of the status bar
}
}
}
This is the most reliable method.
answered Feb 29, 2016 at 0:35
user1112789user1112789
4375 silver badges12 bronze badges
9
On Android 4.1 and higher, you can set your application’s content to appear behind the status bar, so that the content doesn’t resize as the status bar hides and shows. To do this, use SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN. You may also need to use SYSTEM_UI_FLAG_LAYOUT_STABLE to help your app maintain a stable layout.
When you use this approach, it becomes your responsibility to ensure that critical parts of your app’s UI (for example, the built-in controls in a Maps application) don’t end up getting covered by system bars. This could make your app unusable. In most cases you can handle this by adding the android:fitsSystemWindows attribute to your XML layout file, set to true. This adjusts the padding of the parent ViewGroup to leave space for the system windows. This is sufficient for most applications.
In some cases, however, you may need to modify the default padding to get the desired layout for your app. To directly manipulate how your content lays out relative to the system bars (which occupy a space known as the window’s «content insets»), override fitSystemWindows(Rect insets). The fitSystemWindows() method is called by the view hierarchy when the content insets for a window have changed, to allow the window to adjust its content accordingly. By overriding this method you can handle the insets (and hence your app’s layout) however you want.
form:
https://developer.android.com/training/system-ui/status.html#behind
answered Sep 11, 2017 at 9:47
xiaoyuan huxiaoyuan hu
1652 silver badges2 bronze badges
If you know exactly the size VS height
like
for example in a device with 320 X 480 screen size the status bar height is 25px, for a device with 480 x 800 the status bar height must be 38px
then you can just get the width of your view / the screen size you can just use an if else statement to get the height of status bar
answered Oct 17, 2010 at 21:16
Steven ShihSteven Shih
6451 gold badge10 silver badges22 bronze badges
2
Since multi-window mode is available now, your app may not have statusbar on top.
Following solution handle all the cases automatically for you.
android:fitsSystemWindows="true"
or programatically
findViewById(R.id.your_root_view).setFitsSystemWindows(true);
you may also get root view by
findViewById(android.R.id.content).getRootView();
or
getWindow().getDecorView().findViewById(android.R.id.content)
For more details on getting root-view refer — https://stackoverflow.com/a/4488149/9640177
answered Mar 7, 2020 at 7:25
This issue recently became relevant for me because of the notch in my Pixel 3XL. I really liked android developer’s solution, but I wanted to be able to get the status bar height at will, since it was specifically necessary for a full screen animation that I needed to play. The function below enabled a reliable query:
private val DEFAULT_INSET = 96
fun getInsets(view: View?): Int {
var inset = DEFAULT_INSET
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {//Safe because only P supports notches
inset = view?.rootWindowInsets?.stableInsetTop ?: DEFAULT_INSET
}
return inset
}
fun blurView(rootView: View?, a: SpacesActivity?) {
val screenBitmap = getBitmapFromView(rootView!!)
val heightDifference = getInsets(rootView)
val croppedMap = Bitmap.createBitmap(
screenBitmap, 0, heightDifference,
screenBitmap.width,
screenBitmap.height - heightDifference)
val blurredScreen = blurBitmap(croppedMap)
if (blurredScreen != null) {
val myDrawable = BitmapDrawable(a!!.resources, blurredScreen)
a.errorHudFrameLayout?.background = myDrawable
a.appBarLayout?.visibility = View.INVISIBLE
}
}
And then in the activity class:
fun blurView() {
this.runOnUiThread {
Helper.blurView(this)
}
}
You will of course want to make pass a weak reference of the activity to the static Helper class method parameter, but for the sake of brevity I refrained in this example. The blurBitmapand errorHudFrameLayout are omitted for the same reason, since they don’t directly pertain to obtaining the height of the status bar.
answered Nov 1, 2018 at 15:50
4

































