У меня есть этот ViewController, который добавляет titleView
к navigationItem
на viewDidLoad
:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.titleView = self.navigationLogo()
}
/**
Navigation Logo
*/
func navigationLogo() -> UIView {
let logoView = UIView(frame: CGRect(x: 0, y: 0, width: (self.navigationController?.view.frame.width)! * 0.9, height: 44))
let imageView = UIImageViewAligned(frame: CGRect(x: 5, y: 5, width: logoView.frame.width - 10, height: logoView.frame.height - 10))
imageView.contentMode = .scaleAspectFit
switch YTPAppManager.language {
case .arabic:
if self.navigationController?.viewControllers.firstIndex(of: self)! == 0 {
imageView.frame = CGRect(x: -30, y: 5, width: logoView.frame.width - 10, height: logoView.frame.height - 10)
} else {
imageView.frame = CGRect(x: -78, y: 5, width: logoView.frame.width - 10, height: logoView.frame.height - 10)
}
imageView.image = #imageLiteral(resourceName: "ytp_logo_ar")
imageView.alignRight = true
case .english:
imageView.image = #imageLiteral(resourceName: "ytp_logo")
imageView.alignLeft = true
}
logoView.addSubview(imageView)
return logoView
}
. Этот режим отлично работает на всех телефонах, но после обновления до iOS 13 , теперь iPhone 8 дублирует это изображение:
Это происходит только на iPhone 8, все остальные телефоны выглядят корректно. Я пробовал это как на симуляторе, так и на физическом, и результаты одинаковы для обоих типов устройств ...
Есть идеи, почему iPhone 8 дублирует изображение?