Строка состояния цвет текста iOS 7 [дубликат]
этот вопрос уже есть ответ здесь:
Я не могу изменить цвет текста в строке состояния в iOS 7 SDK. В настоящее время его черный, и я хочу, чтобы он был белым для всех моих контроллеров просмотра в раскадровке.
Я видел несколько вопросов на StackOverflow, как это, это и это, но они не очень помогли. Также может быть из-за того, что я не могу найти UIViewControllerBasedStatusBarAppearance в YES в моем файле plist.
может ли кто-нибудь сказать мне правильный способ установить цвет текста строки состояния на белый для всех контроллеров вида в раскадровке? Заранее спасибо!
4 ответа:
позвольте мне дать вам полный ответ на ваш вопрос. Изменить статус бар цвет текста очень легко, но его немного запутанным в iOS 7 специально для новичков.
Если вы пытаетесь изменить цвет с черного на белый в раскадровке, выбрав контроллер вида и перейдя к моделируемым метрикам с правой стороны, это не сработает, и я не знаю, почему. Он должен работать, меняясь так, но как угодно.
во-вторых, вы не найдете Свойство UIViewControllerBasedStatusBarAppearance в вашем plist, но по умолчанию его там нет. Вы должны добавить его самостоятельно, нажав на кнопку+, а затем установить его в НЕТ.
наконец, вы должны перейти к вашему AppDelegate.m файл и добавить следующее в didFinishLaunchingWithOptions метод, добавьте следующую строку:
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
это изменит цвет на белый для всех ваших контроллеров вида. Надеюсь, это поможет!
если вы ищете
UIViewControllerBasedStatusBarAppearance
, вам нужно нажать на маленький знак плюс, который появляется при наведении указателя мыши на корневой элемент в файле plist.как только вы это сделаете, появится новая строка - выберите "вид отображения строки состояния на основе контроллера" из выпадающего списка и установите
NO
как его значение. (Это дружественное имя объявляется внутренне какUIViewControllerBasedStatusBarAppearance
)далее, вызов следующего метода в делегате приложения должен установить статус цвет панели до белого для всех контроллеров вида:
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];