Core data 搜索栏返回按钮
我在tableview中有一个搜索栏,在.csv文件(coredata)中搜索结果Core data 搜索栏返回按钮,core-data,swift2,xcode7,uisearchbar,Core Data,Swift2,Xcode7,Uisearchbar,我在tableview中有一个搜索栏,在.csv文件(coredata)中搜索结果列表非常庞大,因此用户必须在第一次搜索后向上滚动多次才能到达搜索栏,或者在Indexbar中选择“A”字母有没有办法在导航栏中添加一个按钮,以便在用户希望返回列表开头时显示搜索栏?提前谢谢 searchController = UISearchController(searchResultsController: nil) tableView.tableHeaderView = searchCont
列表非常庞大,因此用户必须在第一次搜索后向上滚动多次才能到达搜索栏,或者在Indexbar中选择“A”字母
有没有办法在导航栏中添加一个按钮,以便在用户希望返回列表开头时显示搜索栏?提前谢谢
searchController = UISearchController(searchResultsController: nil)
tableView.tableHeaderView = searchController.searchBar
searchController.searchResultsUpdater = self
searchController.dimsBackgroundDuringPresentation = false
override func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
return sectionTitles[section]
}
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
//assume a single section after a search
return (searchController.active) ? 1 : sectionTitles.count
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if searchController.active {
return searchResults.count
} else {
// Return the number of rows in the section.
let wordKey = sectionTitles[section]
if let items = cockpitDict[wordKey] {
return items.count
}
return 0
}
}
是的,在您执行操作的地方。只需将代码从
tableView.tableHeaderView=searchController.searchBar
替换为navigationItem.titleView=searchController.searchBar
,它在导航栏上显示搜索栏
但是当您选择搜索栏时,它会向上移动,并且可能在屏幕上不可见,因此您可以使用
UISearchBar
而不是UISearchController
。有关更多信息,请查看这些信息。这并不是对您问题的确切回答,但仍然是快速返回表格视图顶部问题的解决方案。您可以覆盖表视图以返回YES
。通过这样做,用户只需点击状态栏即可跳到表的顶部。这是许多股票应用程序的标准行为,如联系人、邮件、Safari和照片
请注意,为了实现此行为,屏幕上只有一个滚动视图/表格视图/集合视图可能返回YES
。在多个滚动视图的情况下,您也可以实现UIScrollViewDelegate
-协议的
- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView
回调并动态检查给定的滚动视图是否应响应点击
虽然这是客观的C方式,但我想你应该能够将这个概念转移到Swift
这种方法有两个优点:
我不知道如何将用户直接发送到搜索栏,但总有其他方法可以做到,您可以做的是:重新加载故事板,然后它将再次显示初始状态下的搜索栏。看看这篇有趣的帖子:也许你可以去另一个VC网站,并立即返回一个简单的动画,这样用户就不会注意到这个骗子了。:) @Michael Dautermann我用一些代码编辑了我的问题。这与你提供的代码链接不同,对我有帮助吗?谢谢,搜索栏消失了,我正试图找回它,但无法恢复。更改为UISearchBar…是什么意思。。。。你能给我接电话吗?谢谢:)你查过我共享的链接了吗?@RamkrishnaSharma是的,我查过了,但不是Swift。你知道我如何用你上面的代码取回搜索栏吗?@Manolo:是swift,请再查一遍。关于找回搜索栏,您是否正在实施UISearchBar或UISearchController,请告诉我,以便我能在这方面帮助您。@Manolo您能转到这个聊天吗?我没有想到这是个好主意。。。。我会看一看,谢谢你Eddie…..效果很好,我可以设定一个形象,让它与众不同。谢谢