iOS 13 导航栏样式:设备和模拟器之间的巨大差异

iOS 13 navigation bar styling: huge differences between device and simulator

我正在使用这段代码设计我的 iOS 应用程序:

window.tintColor = .black

// Completely white navbar
UINavigationBar.appearance().barStyle = .default
UINavigationBar.appearance().isTranslucent = false
UINavigationBar.appearance().shadowImage = UIImage()

// White tabbar
UITabBar.appearance().barStyle = .default
UITabBar.appearance().isTranslucent = false

这一切都在 iOS 13.0 模拟器上正常运行,正如预期的那样:

然而,当我 运行 在我实际的 iPhone X 上使用它时,它看起来像这样:

我正在使用来自 App Store (11A420a) 的 Xcode 11.0,但我的设备是 运行ning iOS 13.1,最新的开发者测试版。

我没有其他设备 运行ning non-beta iOS 13.0,所以我不知道这个问题是否只与 iOS 13.1 有关,或者是否也会发生在 13.0 的设备上。 iOS 13.0 或 .1 在色调方面发生了什么变化可以解释这一点?

我在 https://github.com/kevinrenskers/iOS13tint 有一个显示问题的最小项目。在模拟器上 iOS 13.0 上看起来正常,但在设备上不正常 (iOS 13.0)。

它们在模拟器和设备上的行为相同。但是,在您的测试中,碰巧设备处于暗模式但模拟器不是!只要确保模拟器和设备都具有相同的模式(暗或亮),你就会在两者上看到相同的东西。