我的场景,我试图从UINavigationBar
使用iOS 13 - Swift 5 中删除底线和阴影。在这里,在iOS 13 - Swift 5之前,我使用下面的代码在不改变导航栏颜色的情况下去除底线和阴影。现在,它没有显示NavigationBar
颜色(我已经设置了条形颜色和背景颜色)也禁用了半透明。
代码:
UINavigationBar.appearance().shadowImage = UIImage()
UINavigationBar.appearance().setBackgroundImage(UIImage(), for: .default)
Run Code Online (Sandbox Code Playgroud)
如何解决这个问题?需要去除底线阴影,还想给 NavigationBar 颜色。
小智 10
对我来说,它只有在更改以下内容后才有效(> = iOS13)
let navBarAppearance = UINavigationBarAppearance()
navBarAppearance.configureWithOpaqueBackground()
navBarAppearance.shadowColor = .clear
navBarAppearance.shadowImage = UIImage()
navigationController?.navigationBar.standardAppearance = navBarAppearance
navigationController?.navigationBar.scrollEdgeAppearance = navBarAppearance
Run Code Online (Sandbox Code Playgroud)
Xcode 13 - iOS 15
对于 Xcode 13 并针对 iOS 版本 13 及更高版本,您可以使用以下代码:
if #available(iOS 13.0, *) {
let appearance = UINavigationBarAppearance()
appearance.configureWithOpaqueBackground()
appearance.backgroundColor = .red // Your color
appearance.shadowColor = .clear
appearance.shadowImage = UIImage()
navigationController?.navigationBar.standardAppearance = appearance;
navigationController?.navigationBar.scrollEdgeAppearance = navigationController?.navigationBar.standardAppearance
}
Run Code Online (Sandbox Code Playgroud)
小智 2
尝试一下,我在 viewDidLoad 中添加了。这个对我有用。
self.navigationController?.navigationBar.shadowImage = UIImage()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4908 次 |
最近记录: |