Цвет текста строки состояния React Native изменить в iOS

Я разрабатываю приложение с использованием React Native, меня попросили установить белый цвет текста в строке состояния.

Я использовал компонент StatusBar со свойством barStyle = "light-content", и он довольно хорошо работает на Android, но не на iOS, цвет текста по-прежнему черный.

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


person Fabrizio    schedule 05.10.2018    source источник
comment
Попробуйте, это может вам помочь: github.com/RNRF/react-native -router-flux / issues / 2882   -  person Kuldeep    schedule 05.10.2018
comment
@Kuldeep Я уже проверял эту ссылку перед тем, как писать этот пост, это мне не особо помогло, сейчас я пробую много чего, но я все еще застрял   -  person Fabrizio    schedule 05.10.2018
comment
@Fabrizio, вы должны написать свое решение в качестве ответа и принять его, чтобы другие, кто задает этот вопрос, могли легко увидеть решение (странно отвечать на свой вопрос, но это обычная практика в Stack Overflow).   -  person Matei Radu    schedule 05.10.2018
comment
@MateiRadu отметил!   -  person Fabrizio    schedule 05.10.2018


Ответы (3)


Я решил проблему! Я использую этот код на странице индекса и устанавливаю белый цвет текста:

<StatusBar  barStyle="light-content" translucent={true} />
person hook zou    schedule 26.02.2019

Попробуйте поместить этот код в didFinishLaunchingWithOptions в вашем файле AppDelegate.

UIApplication.shared.statusBarStyle = .lightContent

Цель c

 [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

и в вашем файле info.plist установите для UIViewControllerBasedStatusBarAppearance значение NO

person nishith Singh    schedule 05.10.2018
comment
Я пробовал ваш код, но поскольку я разрабатываю в React Native, файл AppDelegate написан на Objective C, я пытался найти аналогичную строку кода, написанную на Objective C, но я действительно борюсь с этим, пока он не работает - person Fabrizio; 05.10.2018
comment
В Objective C setStatusBarStyle устарел, я все еще пробовал эту строку кода, но цвет текста в строке состояния все еще черный, я действительно думаю, что React Native берет на себя этот код, к сожалению, я не знаю, что с этим делать. Я также забыл упомянуть в своем первом посте, что есть только одно представление, в котором цвет текста белый, как только я перехожу в другое представление, он переключается на черный, а когда я возвращаюсь в представление белого цвета текста, он больше не белый, а черный , это действительно сбивает с толку. - person Fabrizio; 05.10.2018

Я решил свою проблему!

Проблема возникла из библиотеки React Native под названием React Native Navbar, она также контролировала строку состояния, мне пришлось настроить свойство 'light-content' в этом компоненте.

person Fabrizio    schedule 05.10.2018