Здесь Apple Guidelines/Instruction о изменении строки состояния.
Вот - Как изменить статус бара стиля:
Если вы хотите установить статус стиль бара, уровень приложений, а затем установите UIViewControllerBasedStatusBarAppearance
NO
в вашем .plist»файла`.
если вы тусклая установить статус стиль бара, на виде уровня контроллера, то выполните следующие действия:
- Установите
UIViewControllerBasedStatusBarAppearance
в YES
в файле .plist
, если вам необходимо установить статус стиль бара только на уровне UIViewController ,
В viewDidLoad добавить функцию - setNeedsStatusBarAppearanceUpdate
переопределения preferredStatusBarStyle в контроллере представления.
-
override func viewDidLoad() {
super.viewDidLoad()
self.setNeedsStatusBarAppearanceUpdate()
}
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
Установить значение .plist согласно статуса бар стиля уровне настройки.
Вы можете установить цвет фона для строки состояния при запуске приложения или во время viewDidLoad вашего контроллера представления.
extension UIApplication {
var statusBarView: UIView? {
return value(forKey: "statusBar") as? UIView
}
}
// Set upon application launch, if you've application based status bar
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
UIApplication.shared.statusBarView?.backgroundColor = UIColor.red
return true
}
}
or
// Set it from your view controller if you've view controller based statusbar
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
UIApplication.shared.statusBarView?.backgroundColor = UIColor.red
}
}
Вот результат:
Что вы имеете в виду «это по-прежнему показывает строку состояния с черным цветом»: Если ваш код работает, статус шрифт бара должен быть белым , цвет фона в строке состояния зависит от вашего изображения всплеска (который должен теперь включать высоту строки состояния - 20 пикселей) – Vinzzz
Извините, я действительно пропустил текстовое слово.Я изменяю только цвет текста строки состояния. Я могу изменить его после появления заставки, но я не могу изменить его, когда происходит заставка. –