我正在构建我的第一个应用程序。我的章节标题显示不正确。
一切正常。我可以使用搜索栏在主视图中过滤我的项目。部分仍然在搜索结果中正确显示。我也可以点按已过滤搜索结果中的一个项目。 Detail TableView似乎显示更多详细信息。精细。
当我从详细信息视图返回到我的Master tableView时,过滤的项目将显示在其各个部分下。但是 - 原始部分标题也出现(重叠),就像列出了所有(未过滤的)项目一样。
我在显示详细信息之前就发现了表查看主视图的
override func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String {
if tableView == self.searchDisplayController!.searchResultsTableView {
println("COOL")
} else {
println("Damn, it doesn't recognize that its filtered.")
}
...
}
函数触发并认为其“tableView”不再被过滤。
如果我不过滤并点按项目然后返回主视图,该应用程序将完美运行。
有没有人有任何想法我可能做错了什么?
谢谢, 丹尼尔
答案 0 :(得分:0)
这解决了这个问题。 " self.tableView.reloadData()"造成这种行为:
override func viewWillAppear(animated: Bool) {
// DO NOT UNCOMMENT THIS!!! IT BREAKS THE SEARCHING - WHEN I SEARCH AND
// THEN CLICK ON AN ITEM AND GO TO THE DETAIL VIEW CONTROLLER AND THEN GO
// BACK TO THE MAIN VIEW CONTROLLER THEN THE ORIGINAL SECTION HEADERS
// APPEAR ON TOP OF THE RESULTS VIEW.
// self.tableView.reloadData()
super.viewWillAppear(animated)
}