当导航栏下方有可滚动内容时,避免导航栏变得可见
Avoid navigation bar becoming visible when there's scrollable content beneath it
我在 iOS 15 上有一个默认导航栏,最初导航栏本身具有透明背景。
但是当我在视图控制器中滚动视图时,将它的一些内容放在导航栏下方。然后酒吧突然有一个可见的背景。
我没有对导航栏做任何特殊设置。并尝试设置 scrollEdgeAppearance 但没有成功。
if #available(iOS 13.0, *) {
let barAppearance = UINavigationBarAppearance()
barAppearance.configureWithTransparentBackground()
navigationController?.navigationBar.scrollEdgeAppearance = barAppearance
}
在您的代码中添加几行:
if #available(iOS 13, *) {
let barAppearance = UINavigationBarAppearance()
barAppearance.configureWithTransparentBackground()
barAppearance.backgroundColor = .clear
barAppearance.shadowColor = nil
navigationController?.navigationBar.isTranslucent = true
navigationController?.navigationBar.scrollEdgeAppearance = barAppearance
navigationController?.navigationBar.standardAppearance = barAppearance
}
我在 iOS 15 上有一个默认导航栏,最初导航栏本身具有透明背景。
但是当我在视图控制器中滚动视图时,将它的一些内容放在导航栏下方。然后酒吧突然有一个可见的背景。
我没有对导航栏做任何特殊设置。并尝试设置 scrollEdgeAppearance 但没有成功。
if #available(iOS 13.0, *) {
let barAppearance = UINavigationBarAppearance()
barAppearance.configureWithTransparentBackground()
navigationController?.navigationBar.scrollEdgeAppearance = barAppearance
}
在您的代码中添加几行:
if #available(iOS 13, *) {
let barAppearance = UINavigationBarAppearance()
barAppearance.configureWithTransparentBackground()
barAppearance.backgroundColor = .clear
barAppearance.shadowColor = nil
navigationController?.navigationBar.isTranslucent = true
navigationController?.navigationBar.scrollEdgeAppearance = barAppearance
navigationController?.navigationBar.standardAppearance = barAppearance
}