Swift : 导航栏应该放在顶部

Posted

技术标签:

【中文标题】Swift : 导航栏应该放在顶部【英文标题】:Swift : Navigation bar should be stick on to the TOP 【发布时间】:2015-02-06 07:17:42 【问题描述】:

我希望在应用中的每个页面都将导航栏放在顶部。

下面有我的代码

    navigationController?.hidesBarsOnSwipe = true
    navigationController?.hidesBarsOnTap = true
    navigationController?.navigationBar.barStyle =   UIBarStyle.BlackTranslucent
    navigationController?.navigationBar.opaque = true
    navigationController?.navigationBar.translucent=true
    navigationController?.navigationBar.alpha = 0.4
    navigationController?.navigationBar.backgroundColor = UIColor(red: 0.0, green: 0.0, blue: 0.0, alpha: 0.4)
    navigationController?.navigationBar.translucent = true
    navigationController?.navigationBar.tintColor =  UIColor.whiteColor()
    self.navigationController?.setNavigationBarHidden(false, animated: false)

我可以做些什么来粘贴导航栏?

谢谢, 达瓦尔。

【问题讨论】:

坚持是什么意思?它现在做什么?为什么要隐藏它? @Wain ..我想说..它应该贴在页面顶部,不应该隐藏它任何点击或滑动动作......即使我已经将我的代码编辑为 navigationController?.hidesBarsOnSwipe = false navigationController?.hidesBarsOnTap = false 但它不能正常工作...在这种情况下没有显示栏...请告知 使用可选的解包来检查你的nagivationController?,看看它是否是nil @PhamHoan 我该如何检查?对不起,打扰你了。。 if navigationController == nil println("Something") else println("something else") 【参考方案1】:

好的,这里有一些指南,假设你是一个按代码做所有事情的人。

在应用委托中:

let tempVC = UIViewController()
tempVC.backgroundColor = UIColor.redColor()
let navVC = UINavigationController(rootViewController:tempVC)

window?.rootViewController = navVC

它应该工作。 然后在此处或在您的视图控制器中执行您的navigationBar 自定义代码。

【讨论】:

【参考方案2】:

问题已解决

代码如下

 navigationController?.navigationBar.tintColor =  UIColor.whiteColor()
 navigationController?.navigationBar.barStyle = UIBarStyle.BlackTranslucent
 navigationController?. navigationBar. hidden=false

【讨论】:

以上是关于Swift : 导航栏应该放在顶部的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 的导航栏顶部显示自定义视图?

如何在导航栏顶部添加视图

移动开发中导航栏和搜索栏在设计中应该注意哪些问题?

我的导航栏在我的 TableView - Swift

在视图控制器中垂直居中并在 swift 中使用导航栏?

如何将导航栏的位置更改为顶部附加在swift 3中