У меня есть приложение со следующей архитектурой представления:
UITabBarController > UISplitViewController > UINavigationController > UIViewController
\
> UINavigationController > UIViewController
Всякий раз, когда я нажимаю контроллер представления, встроенный в контроллер навигации, в качестве подробного вида, я вижу странный нецветный вид, появляющийся позадиглавная панель навигации.Это происходит, когда мое приложение находится в светлом и темном режиме, как видно на скриншотах ниже.
Я воссоздал ту же архитектуру представления в тестовом приложении, и я не вижу появления нецветного представления, поэтому я не уверен, что его вызывает.
Вот некоторыекода, который я использую для создания светлого / темного режима:
extension UINavigationBar: RMDThemeable {
func render(for theme: RMDTheme) {
switch theme {
case .light:
barStyle = .default
case .dark:
barStyle = .black
}
}
}
class RMDCollectionViewController: UICollectionViewController {
func render(for theme: RMDTheme) {
switch theme {
case .light:
collectionView?.backgroundColor = UIColor.baseBackgroundLight
case .dark:
collectionView?.backgroundColor = UIColor.baseBackgroundDark
}
}
}
Вот скриншоты странного цвета:
Вот отладчик представления: