在滚动iOS 13期间设置UINavigationBarAppearance动画
我正在尝试在我的一个视图控制器中设置新导航栏外观iOS 13标准的动画,特别是在滚动iOS 13期间设置UINavigationBarAppearance动画,ios,swift,uinavigationcontroller,uikit,uinavigationbar,Ios,Swift,Uinavigationcontroller,Uikit,Uinavigationbar,我正在尝试在我的一个视图控制器中设置新导航栏外观iOS 13标准的动画,特别是backgroundEffect属性。我的目标是让它看起来正常,当用户向下滚动时,模糊效果会以动画的形式出现 func scrollViewDidScroll(_ scrollView: UIScrollView) { let offset = scrollView.adjustedContentInset.top + scrollView.contentOffset.y if offset >
backgroundEffect
属性。我的目标是让它看起来正常,当用户向下滚动时,模糊效果会以动画的形式出现
func scrollViewDidScroll(_ scrollView: UIScrollView) {
let offset = scrollView.adjustedContentInset.top + scrollView.contentOffset.y
if offset > 10 {
let appearance = UINavigationBarAppearance()
appearance.backgroundColor = .clear
appearance.backgroundEffect = UIBlurEffect(style: .dark)
appearance.shadowColor = .clear
navigationItem.standardAppearance = appearance
} else {
let appearance = UINavigationBarAppearance()
appearance.backgroundColor = .clear
appearance.backgroundEffect = nil
appearance.shadowColor = .clear
navigationItem.standardAppearance = appearance
}
}
似乎我必须重新设置整个导航外观,而不仅仅是设置背景效果。我已尝试将外观包装到
ui视图。animate()
,但似乎无法使用该功能。您能否将其重置为其他控制器?