我究竟做错了什么?
我有 2 个 tableViewControllers。其中一个工作正常。当我进行搜索时,右侧的附件按钮会显示结果,并且 prepareForSegue 运行良好。
但是另一个tableViewController和第一个完全一样。搜索工作正常,但不显示附件按钮,并且不会触发 prepareForSegue。
无法弄清楚缺少什么。
我究竟做错了什么?
我有 2 个 tableViewControllers。其中一个工作正常。当我进行搜索时,右侧的附件按钮会显示结果,并且 prepareForSegue 运行良好。
但是另一个tableViewController和第一个完全一样。搜索工作正常,但不显示附件按钮,并且不会触发 prepareForSegue。
无法弄清楚缺少什么。
我做了这样的解决方法:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if (tableView == self.searchDisplayController.searchResultsTableView) {
[tableView deselectRowAtIndexPath:indexPath animated:YES];
[self performSegueWithIdentifier:@"ShowComment" sender:self];
}
}
我仍然不明白为什么 prepareForSeque 不会为 searchDisplay tableview 触发。
我也花了一些时间浏览这个。我遇到了完全相同的问题,我没有为这个特定的构建使用故事板,因为我以编程方式将搜索添加到导航栏。这一切都归结为一件简单的事情,添加以下内容:
[searchDisplayController setSearchResultsDelegate:self]
一旦我这样做了,didSelectRowAtIndexPath 最终会因为从我的 searchResults tableView 中选择一个结果而被触发!