【发布时间】:2015-05-23 07:15:02
【问题描述】:
我试图在导航栏中有一个 UISearchController 并在外部控制器中显示结果。
由于某种原因,我在输入内容时导航栏消失了
我已经尝试了几个小时的不同解决方案,但没有任何结果。看起来它与Navigation bar disappears when typing in UISearchController text field 和 Navigation bar disappears if reload data with UISearchController 没有得到任何答复。
self.cearchController = ({
//creating another tableview
let storyBoard = UIStoryboard(name: "Main", bundle: NSBundle.mainBundle())
let alternateController:SearchResultsTableViewController = storyBoard.instantiateViewControllerWithIdentifier("SearchResultsTableViewController") as! SearchResultsTableViewController
let controller = UISearchController(searchResultsController: alternateController)
controller.hidesNavigationBarDuringPresentation = false
controller.dimsBackgroundDuringPresentation = false
controller.searchResultsUpdater = alternateController
controller.searchBar.sizeToFit()
controller.searchBar.placeholder = "Search"
self.navigationItem.titleView = controller.searchBar
return controller
})()
我试过了
self.navigationController?.setNavigationBarHidden(true, animated: false)
我有
myResultsTableView.definesPresentationContext = true
在viewdidload中
这就是它的样子:
注意:我几天前才开始使用 swift,所以我可能遗漏了一些非常明显的东西!
感谢并很高兴添加更多代码
【问题讨论】:
-
你能检查一下是不是键盘出现的时候?使用这个:navigationController?.hidesBarsWhenKeyboardAppears = false // 同样,检查这个链接natashatherobot.com/navigation-bar-interactions-ios8
-
您找到问题的解决方案了吗?我面临着类似的问题,找不到它的根本原因。
标签: ios uitableview swift uinavigationbar uisearchcontroller