Я пытаюсь скрыть UILabel
, который был добавлен как titleView
элемента навигации UIViewController
. В iOS 11 и более ранних версиях следующий код правильно закрывает метку. При запуске на iOS 12 анимация появления работает, но анимация затухания не анимируется — вид сразу исчезает.
let fadeTextAnimation = CATransition()
fadeTextAnimation.type = .fade
fadeTextAnimation.duration = 0.5
navigationItem.titleView!.layer.add(fadeTextAnimation, forKey: nil)
(navigationItem.titleView as! UILabel).isHidden = didShowNavigationItemTitle
Я также пытался изменить код для использования UIView.transition
, но наблюдается такое же поведение.
UIView.transition(with: navigationItem.titleView!,
duration: 0.5,
options: .transitionCrossDissolve,
animations: {
(self.navigationItem.titleView as! UILabel).isHidden = self.didShowNavigationItemTitle
}, completion: nil)
Как можно добиться этого затухания в iOS 12?