iOS7 – Можно ли изменить цвет строки состояния?

Кто-нибудь знает, как изменить цвет текста строки состояния? Я хочу, чтобы он был оранжевым.

Я не говорю о обычном черно-белом цвете UIStatusBarStyleLightContent ; или UIStatusBarStyleBlackOpaque ; или что-то еще.

3 Solutions collect form web for “iOS7 – Можно ли изменить цвет строки состояния?”

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

Отказ от ответственности: это все недокументированная территория … она, вероятно, не будет одобрена, когда вы отправите ее в магазин приложений. однако вам может повезти …

В iOS 7 вы можете сделать это:

 /// sets the status bar text color. returns YES on success. /// currently, this only /// works in iOS 7. It uses undocumented, inofficial APIs. BOOL setStatusBarColor(UIColor *color) { id statusBarWindow = [[UIApplication sharedApplication] valueForKey:@"statusBarWindow"]; id statusBar = [statusBarWindow valueForKey:@"statusBar"]; SEL setForegroundColor_sel = NSSelectorFromString(@"setForegroundColor:"); if([statusBar respondsToSelector:setForegroundColor_sel]) { // iOS 7+ [statusBar performSelector:setForegroundColor_sel withObject:color]; return YES; } else { return NO; } } 

в iOS5 и iOS6 это тоже возможно, но я не пробовал, потому что это гораздо больше работы. Однако я нашел интересный метод (доступный в iOS 5 и iOS 6). Класс UIStatusBarItemView имеет метод экземпляра -textColorForStyle: (который принимает целое число и возвращает объект). Возможно, вы сможете обезвредить его, чтобы вернуть любой цвет, который вам нравится. Однако я не знаю, будет ли это работать. Вам может потребоваться перечислить все элементы строки состояния и вызвать -setNeedsDisplay вручную для каждого, чтобы изменить цвет сразу, но кто знает …

Примечание. Я только что опубликовал код на моей странице github.

Вы не можете изменить его на оранжевый.

В настоящее время черно- белые являются единственным доступным цветом строки состояния / цвета texr.

В рекомендациях Apple UI указано, что не создавайте настраиваемую строку состояния .

По умолчанию цвет содержимого / текста в строке состояния черный, и это может привести к тому, что строка состояния станет нечитаемой, если содержимое, расположенное за панель состояния, темное.

Чтобы исправить эту проблему, вы можете установить UIStatusBarStyle вашего приложения и / или представлений. UIStatusBarStyleLightContent изменяет цвет содержимого в строке состояния на белый; поочередно, UIStatusBarStyleDefault устанавливает цвет содержимого строки состояния в черный.

введите описание изображения здесь

Попробуйте со следующим кодом. В методе AppDelegate.m

 self.window.backgroundColor = [UIColor colorWithRed:0.89f green:0.11f blue:0.17f alpha:1]; // set color as you want [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackTranslucent]; 

И если вы говорите о цвете текста строки состояния, на этом сайте есть так много вопросов:

Строка состояния Цвет текста iOS 7
Как изменить цвет текста строки состояния в iOS 7
Изменить цвет текста строки состояния с белого iOS 7 / Xcode 5

PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.