将
UIViewControllerbasedStatusBarAppearance
要YES
在文件的.plist。在
viewDidLoad
做一个[self setNeedsStatusBarAppearanceUpdate];
添加以下方法:
- (UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleLightContent;
}
注意
:这不适用于内部控制器
UINavigationController,请参阅下面的Tyson评论:)
Swift 3- 这将在内部工作控制器
UINavigationController。将此代码添加到您的控制器中。
// Preferred status bar style lightContent to use on dark background.// Swift 3override var preferredStatusBarStyle: UIStatusBarStyle { return .lightContent}Swift 5和SwiftUI
对于SwiftUI,创建一个新的swift文件,名为
HostingController.swift
import Foundationimport UIKitimport SwiftUIclass HostingController: UIHostingController<ContentView> { override var preferredStatusBarStyle: UIStatusBarStyle { return .lightContent }}然后在
SceneDelegate.swift
window.rootViewController = UIHostingController(rootView: ContentView())
至
window.rootViewController = HostingController(rootView: ContentView())



