请帮助我如何让uisearchcontroller发送一个关于搜索文本的帖子请求,并带有一个任务来获取json请求并显示它。我已经完成了PHP和JSON端,但卡在了搜索控制器中。我在互联网上找到了关于uisearchcontroller的样本,但是他们都在代码中有他们的数组。他们都没有从服务器端获取数据..
答案 0 :(得分:0)
执行此操作的方法是使用dispatch_async()
在updateSearchResultsForSearchController
中调用您的服务器API。当服务器请求返回时,更新表数据源中的内部结果数组,并在reloadData
上调用UITableView
。
类似的东西:
func updateSearchResultsForSearchController(searchController: UISearchController) {
let searchText = searchController.searchBar.text
let priority = DISPATCH_QUEUE_PRIORITY_DEFAULT
dispatch_async(dispatch_get_global_queue(priority, 0)) {
results = remote_api.call(searchText)
dispatch_async(dispatch_get_main_queue()) {
self.results = results
self.tableView.reloadData()
}
}
}
请注意,服务器请求可能会无序返回。您可能想要检查这一点。