Здесь 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
}
}
Вот результат:
"Я не хочу, бар прозрачный статус" незадача. Он прозрачен (в последних версиях iOS). Когда вы примете реальность, вы можете начать прием обходных решений. – matt