如何设置导航栏

如何设置导航栏

问题描述:

我已经通过我的代码几次,我似乎无法找到答案。所以我有一个视图控制器,并在该视图控制器中,我有一个搜索栏。当我在搜索栏中输入表格视图时。表格视图来自另一个称为ResultsViewController的视图控制器,并且搜索结果tableview被放置在搜索栏的正下方,这非常完美。如何设置导航栏

let locationSearchTable = UIStoryboard(name: "MainPage", bundle: nil).instantiateViewController(withIdentifier: "ResultsViewController") as! ResultsViewController 
searchController = UISearchController(searchResultsController: locationSearchTable) 
searchController?.searchResultsUpdater = locationSearchTable 

但我的问题是,当我点击表视图的细胞,它塞格斯为detailedViewController,并失去其导航栏:

enter image description here

这是detailedViewController检查员属性: enter image description here

我不确定什么是错误的,因为我可以继续从其他视图控制器的detailedViewControllerenter image description here enter image description here

+0

**当我在搜索栏键入一个表视图来了**这的tableView怎么来了?你使用presentViewController吗? – Surjeet

+0

@Krunal我更新了它 – juelizabeth

+0

@Sjejeet没有我使用的代码在我的问题 – juelizabeth

您的详细信息视图控制器有故事板segue连接的问题。

确保以下几点:

  • 你导航控制器嵌入在表视图列表控制器
  • 从“TableViewCell”
  • 删除赛格瑞连接,并与视图控制器连接(视图控制器>> Segue公司>>查看控制器)
  • 你赛格瑞被连接作为“推”不存在

下面是示例快照,示出具有连接赛格瑞型导航栏:

enter image description here

现在,以保证导航控制器,改变你的SEGUE实物看到:

enter image description here

+0

这就是我所做的。我也很困惑,因为我已经从其他多个viewController中查找到detailViewController,并且它不会丢失其导航栏 – juelizabeth

+0

要确保导航控制器,请更改您的segue种类以便推送和查看。 – Krunal

+0

它会执行推送导航或您的应用程序崩溃 – Krunal

确保您的导航控制器栏不隐藏。

//迅速3

override func viewWillAppear(animated: Bool) { 
    self.navigationController?.setNavigationBarHidden(false, animated: animated) 
    } 

// SWIFT 2

override func viewWillAppear(animated: Bool) { 
    self.navigationController?.isNavigationBarHidden = false 
}