IOS8 UISearchController 直接显示搜索栏
Posted
技术标签:
【中文标题】IOS8 UISearchController 直接显示搜索栏【英文标题】:IOS8 UISearchController display searchbar directly 【发布时间】:2015-01-09 19:16:13 【问题描述】:我正在尝试使用 UISearchController 为我的 iphone 应用程序显示一个简单的搜索屏幕。 我使用了一个 UITableViewController 和一个嵌入在 UINavigationController
中的 UISearchController 这让我进入以下屏幕(状态 1) 当用户点击搜索字段时,我会看到以下屏幕(state 2): 搜索栏很好地显示在状态栏下方的屏幕顶部。我想要做的是立即获得 state 2 而不去 state 1
我尝试添加此代码
presentViewController(searchController, animated: true, completion: nil)
但如果动画为假,它要么不显示搜索栏,要么按我想要的方式显示它,但在临时显示导航栏的不必要过渡之后
【问题讨论】:
你的问题毫无意义。 你是把搜索字段作为表格视图的标题视图开始的人(状态1)。如果那不是你想要的,你为什么要这么做?如果您希望搜索字段位于导航栏中,为什么不将其放在导航栏中? 【参考方案1】:好的,我刚刚发现如何阅读这个答案UISearchController in a UIViewController
我只需要像这样添加搜索栏就可以得到想要的效果
searchController.hidesNavigationBarDuringPresentation = false
// tableView.tableHeaderView = searchController.searchBar
navigationItem.titleView = searchController.searchBar
【讨论】:
以上是关于IOS8 UISearchController 直接显示搜索栏的主要内容,如果未能解决你的问题,请参考以下文章
UISearchController 未在 iOS8 上显示
防止 UISearchController 在 IOS8 中隐藏视图导航栏
你如何解除 UISearchController ? (iOS 8 及以下)
搜索框UISearchController的使用(iOS8.0以后替代UISearchBar + UISearchDisplayController)