所以,我有这段代码,直到现在( 它看起来像这样(左侧为iOS 12,右侧为iOS 13): 实际上,在动画发生时,它是可见的,但之后消失了。 修改: 这就是我想做的: 但是,如上所述,有效的方法是navigationItem.titleView = {
let view = UIView()
view.backgroundColor = .blue
view.translatesAutoresizingMaskIntoConstraints = false
return view
}()
如果您在titleView
中设置viewDidAppear
,则可以使用。但是有一个延迟,不是那么优雅。 override func viewDidLoad() {
super.viewDidLoad()
navigationItem.titleView = {
let view = UIView()
view.backgroundColor = .blue
view.translatesAutoresizingMaskIntoConstraints = false
return view
}()
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
navigationItem.titleView = {
let view = UIView()
view.backgroundColor = .blue
view.translatesAutoresizingMaskIntoConstraints = false
return view
}()
}