iOS 13 navigationBar.barStyle

问题描述 投票:0回答:1

我正在为NavigationBar应用新的外观API,并且在状态栏内容(文本)方面苦苦挣扎。在Info.plist上,由于大多数应用程序都是白色,因此我不得不使用灯光模式,但是在我的其中一个viewControllers中,导航栏为深蓝色(几乎是黑色),因此该栏中的内容需要为白色。

我曾经在iOS 12.4]之前的版本上使用navigationBar.barStyle = .black,但是对于iOS 13及更高版本,它不再起作用。遵循我尝试过并失败的代码。

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)

    if let navController = self.navigationController {
        let navBarAppearance = navController.navigationBar.standardAppearance.copy()
        navBarAppearance.configureWithOpaqueBackground()
        navBarAppearance.shadowImage = UIImage()
        navBarAppearance.backgroundColor = LayoutBootstrap.colors.primary.solid // Dark blue

        navController.navigationBar.standardAppearance = navBarAppearance
        navController.navigationBar.barStyle = .black
    }
}

Status bar content is black

PS:在didFinishLaunchingWithOptions上,我已经调用了NavigationBar和项目的默认配置外观

你们有什么建议吗?

提前感谢。

我正在为NavigationBar应用新的外观API,并且在状态栏内容(文本)方面苦苦挣扎。在Info.plist上,由于大多数应用程序都是白色的,所以我不得不使用灯光模式,但是在一个...

swift statusbar navigationbar ios13
1个回答
0
投票

您还需要设置状态栏样式

© www.soinside.com 2019 - 2024. All rights reserved.