在 iOS13 + xcode 11 中隐藏导航栏
Posted
技术标签:
【中文标题】在 iOS13 + xcode 11 中隐藏导航栏【英文标题】:hide navigation bar in iOS13 + xcode 11 【发布时间】:2020-03-31 17:01:57 【问题描述】:我想为第一个ViewController
隐藏navigationBar
,这是我的第一个屏幕。它都嵌入在导航控制器中。我尝试了下面的代码,但没有工作。
override func viewWillAppear(_ animated: Bool)
let navigationBar = navigationController?.navigationBar
if #available(ios 13.0, *)
let navigationBarAppearence = UINavigationBarAppearance()
navigationBarAppearence.shadowColor = .clear
navigationBar?.scrollEdgeAppearance = navigationBarAppearence
navigationBar?.standardAppearance = navigationBarAppearence
navigationBar?.compactAppearance = navigationBarAppearence
navigationBar?.backgroundColor = .clear
navigationBar?.isHidden = true
else
navigationBar?.isHidden = true
我正在使用 xcode11 如何隐藏导航栏?建议总是受到赞赏。
【问题讨论】:
【参考方案1】:试试这个代码
self.navigationController?.isNavigationBarHidden = true
【讨论】:
请不要只发布代码作为答案,还要解释您的代码的作用以及它如何解决问题的问题。带有解释的答案通常质量更高,更有可能吸引投票。 谢谢,Vishnu anilKumar,但你能解释一下区别吗? ***.com/questions/47470145/…【参考方案2】:试试这个
navigationController?.isNavigationBarHidden = true
而不是
let navigationBar = navigationController?.navigationBar
navigationBar?.isHidden = true
【讨论】:
谢谢,Faysal Ahmed,但你能解释一下区别吗? 检查这个:***.com/questions/47470145/…【参考方案3】:我知道您尝试过编码,但尝试了一些不同的东西。 无需代码,您可以使用 Main.storyboard。
1.按下“导航控制器场景” 2.按“导航控制器” 3.右手边的侧边栏(忘记叫什么了) 4.将鼠标悬停在顶部图标上找到“显示属性检查器” 5.在“Simulated Metric”下找到“Navigation Controller” 6.在“Bar Visbilty”旁边取消单击“显示导航栏” 7.全部完成
我知道这不是代码,但希望这对你有用。
【讨论】:
【参考方案4】:在 iOS15 + xcode 13 中隐藏导航栏
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool
if #available(iOS 15, *)
let appearance = UINavigationBarAppearance()
appearance.configureWithOpaqueBackground()
appearance.titleTextAttributes = [.foregroundColor: UIColor.white]
appearance.backgroundColor = UIColor(red: 0.0/255.0, green: 125/255.0, blue: 0.0/255.0, alpha: 1.0)
UINavigationBar.appearance().standardAppearance = appearance
UINavigationBar.appearance().scrollEdgeAppearance = appearance
【讨论】:
在 didFinishLaunchingWithOptions launchOptions 中添加此代码: 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center。以上是关于在 iOS13 + xcode 11 中隐藏导航栏的主要内容,如果未能解决你的问题,请参考以下文章
向导航栏添加渐变将隐藏 iOS 13.0 + 中的栏按钮项目