如何淡出iOS 12上的titleView标签

时间:2018-09-16 15:52:32

标签: ios swift uikit uiviewanimation ios12

我正在尝试淡出已添加为UILabel导航项UIViewController的{​​{1}}。在iOS 11及更低版本上,以下代码可以正确淡出标签。在iOS 12上运行时,淡入 in 动画有效,但淡入 out 不动画,视图立即消失。

titleView

我也尝试过更改代码以使用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

如何在iOS 12中实现这种淡出?

1 个答案:

答案 0 :(得分:1)

只需使用UIView.animate块并为标题视图的Alpha设置动画即可。

UIView.animate(withDuration: 0.5, delay: 0, options: .transitionCrossDissolve, animations: {
    self.navigationItem.titleView?.alpha = 0
})