Flutter ios и цвет текста в строке состояния

Я прочитал десятки вопросов и ответов, я прочитал много статей и пробовал много вещей, я не могу сделать текст строки состояния моего приложения белым на ios. так что сначала вот скриншот. Flutter ios и цвет текста в строке состояния

Я, конечно, хочу белый. Вот что я пробовал:

  1. Сначала я попытался использовать тему моего приложения CupertinoApp, особенно свойство яркости.
  2. Я пытался использовать SystemChrome.setSystemUIOverlayStyle, чтобы установить статусBrightness
  3. Я попытался использовать Info.plist моего приложения, чтобы установить яркость, и это сработало, например, во время загрузки оно белое, но затем становится черным, когда приложение действительно запускается.
  4. Я попробовал этот пакет: https://pub.dev/packages/flutter_statusbarcolor, и он тоже работает около 0,2 секунды, я вижу, что текст белый, а затем снова черный.

В каждом тесте я использовал обе настройки яркости, чтобы избежать недоразумений, и каждый раз полностью обновлял все приложение, чтобы избежать проблем с кешем. Что мне не хватает?

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
5
0
5 969
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

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

  SystemChrome.setSystemUIOverlayStyle(
      SystemUiOverlayStyle(statusBarBrightness: Brightness.dark)
  );

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

p.s. Чтобы снова сделать значки темными, используйте Brightness.light

ну на самом деле, я его не видел, но он делает то же самое, что и 3) и 4), он белый в течение очень короткого времени (~ 0,1 секунды), а затем черный. Я думаю проблема из купертиноNavigationBar, если его убрать, то все методы работают как по маслу. но мне нужна навигация. Если я установлю черный цвет фона панели навигации, это сработает, и у меня будет белый текст в строке состояния, но мне нужно, чтобы он был розоватым, как на моем экране.

beauchette 11.06.2019 12:00

@moo Ну, ты прав. CupertinoNavigationBar переопределяет стиль строки состояния в зависимости от установленного вами цвета. Например, если вы используете темный фон, текст и значки становятся белыми и т. д. Конечно, это не идеально.

Gunhan 11.06.2019 12:52
Ответ принят как подходящий

Кажется, что нет другого ответа, кроме этого:

Как я могу изменить цвет текстовой строки состояния

Я позволю людям оценить время, которое Хьюго Пассос потратил на его документирование.

Другие вопросы по теме