Sar*_*rah 8 xcode objective-c statusbar ios swift
我曾经setStatusBarStyle在我的项目中使用,它工作正常,但它已被弃用,所以我使用preferredStatusBarStyle,但没有用.知道我:
覆盖该功能
此函数未被调用
注意:我正在使用导航控制器.
Kru*_*nal 29
以下是有关状态栏更改的Apple指南/说明.
如果要设置状态栏样式,则应用程序级别将设置UIViewControllerBasedStatusBarAppearance为NO您的.plist文件.并在您的appdelegate> didFinishLaunchingWithOptions添加以下ine(以编程方式,您可以从应用程序委托).
目标C.
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];
Run Code Online (Sandbox Code Playgroud)
迅速
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
application.statusBarStyle = .lightContent
return true
}
Run Code Online (Sandbox Code Playgroud)
如果要设置状态栏样式,请在视图控制器级别执行以下步骤:
UIViewControllerBasedStatusBarAppearanceto .YES.plist在viewDidLoad中添加功能 - setNeedsStatusBarAppearanceUpdate
覆盖视图控制器中的preferredStatusBarStyle.
目标C.
- (void)viewDidLoad
{
[super viewDidLoad];
[self setNeedsStatusBarAppearanceUpdate];
}
- (UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleLightContent;
}
Run Code Online (Sandbox Code Playgroud)
迅速
override func viewDidLoad() {
super.viewDidLoad()
self.setNeedsStatusBarAppearanceUpdate()
}
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
Run Code Online (Sandbox Code Playgroud)
根据状态栏样式设置级别设置.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
}
}
Run Code Online (Sandbox Code Playgroud)
结果如下:

| 归档时间: |
|
| 查看次数: |
13903 次 |
| 最近记录: |