gpt4 book ai didi

ios - 无法更改 iOS 13 中大标题的导航栏色调颜色

转载 作者:行者123 更新时间:2023-12-02 01:16:32 25 4
gpt4 key购买 nike

代码:

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.

UINavigationBar.appearance().barTintColor = .red

return true
}

如果prefersLargetitles为假那么就没有问题。但是当prefersLargeTitles = true时,颜色不会改变。这曾经适用于 iOS 12。但自 iOS 13 以来,这不起作用。谁能帮忙了解如何在 iOS 13 中自定义导航栏

最佳答案

iOS 13 中的导航栏外观有一些变化,默认情况下,如果关联 View Controller 具有可滚动内容,导航栏将变为透明。

在这种情况下,您应该创建一个 UINavigationBarAppearance 对象并将其分配给 compactAppearancescrollEdgeAppearance。您也可以更改 UINavigationBarAppearance 对象的属性。

if #available(iOS 13.0, *) {
let appearance = UINavigationBarAppearance()
appearance.backgroundColor = .purple
UINavigationBar.appearance().compactAppearance = appearance
UINavigationBar.appearance().scrollEdgeAppearance = appearance
} else {
UINavigationBar.appearance().barTintColor = .purple
}

您可以在 here 找到更多详细信息& iOS13release_notes

关于ios - 无法更改 iOS 13 中大标题的导航栏色调颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58428778/

25 4 0