searchDisplayController

searchDisplayController

此行已导致编译器警告searchDisplayController不推荐使用:从Xcode 6.3更新开始。
问题行if tableView == self.searchDisplayController!.searchResultsTableView

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    if tableView == self.searchDisplayController!.searchResultsTableView {return self.filteredPlayers.count}
    else {return self.results.count;}
}

我用类似格式的其他行解决了这个警告
func searchDisplayController(controller: UISearchDisplayController, shouldReloadTableForSearchScope searchOption: Int) -> Bool {
    let scope = self.searchDisplayController?.searchBar.scopeButtonTitles as! [String]
    self.filterContentForSearchText(self.searchDisplayController!.searchBar.text, scope: scope[searchOption])
    return true
}

通过切断Display并从searchDisplayController?行删除let scope = self.searchDisplayController?.searchBar.scopeButtonTitles,因此
func searchController(controller: UISearchController, shouldReloadTableForSearchScope searchOption: Int) -> Bool {
    let scope = self.searchBar.scopeButtonTitles as! [String]
    self.filterContentForSearchText(self.searchBar.text, scope: scope[searchOption])
    return true
}

但我无法找到上面问题行的正确编辑。
if tableView == self.searchController!.searchResultsTableView  //could not find member 'searchResultsTableView'


if tableView == self.searchResultsTableView  //ViewController does not have a member named 'searchRsultsTableView'

最佳答案

看起来你不能从界面生成器中完成,但是你必须从代码中完成。
Updating to the iOS 8 Search Controller

关于swift - xcode 6.3不推荐使用UIsearchDisplayController,如何使警告静音,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29834100/

10-12 16:03