Итак, в приложении используются адаптивные наборы цветов в Assets.xcassets для обработки световых и темных режимов. Обычно все работает нормально - цвета правильно показываются по всему приложению, включая навигационную панель. Он вынужден к свету, который разрушает визуальную консистенцию, потому что остальная часть приложения по -прежнему находится в темном режиме.static func getAppearance() -> UINavigationBarAppearance {
let appearance = UINavigationBarAppearance()
appearance.configureWithOpaqueBackground()
appearance.backgroundColor = .background
appearance.backgroundEffect = nil
appearance.titleTextAttributes = [.foregroundColor: UIColor.navbarTitle]
return appearance
}
func updateAppearance() {
let appearance = Self.getAppearance()
UINavigationBar.appearance().standardAppearance = appearance
UINavigationBar.appearance().scrollEdgeAppearance = appearance
UINavigationBar.appearance().compactAppearance = appearance
self.navigationBar.standardAppearance = appearance
self.navigationBar.scrollEdgeAppearance = appearance
self.navigationBar.compactAppearance = appearance
self.setNeedsStatusBarAppearanceUpdate()
}
< /code>
Цвет .background на самом деле uicolor (название: «фоновый»), где фон определяется в файле .xcasset.
теперь с помощью "scode resparty" upparty vitsparty с помощью "supparty" upparty vit. alt = "Введите описание изображения здесь" src = "https://i.sstatic.net/udovblwe.jpg"/>
, в то время как, когда «уменьшить прозрачность» включена:
Подробнее здесь: https://stackoverflow.com/questions/797 ... ncy-is-ena