Ios 搜索后打开控制器视图两次

Ios 搜索后打开控制器视图两次,ios,Ios,我试图理解控制器之间的数据传递。我正在显示一个带有搜索和导航栏的tableview。当我选择其中一行时,它会打开另一个包含详细信息的控制器视图。但是,如果我在搜索后选择,它会打开相同的详细控制器视图两次 这是我的行选择代码 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { if (tableView == self.searchDisplayControl

我试图理解控制器之间的数据传递。我正在显示一个带有搜索和导航栏的tableview。当我选择其中一行时,它会打开另一个包含详细信息的控制器视图。但是,如果我在搜索后选择,它会打开相同的详细控制器视图两次

这是我的行选择代码

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if (tableView == self.searchDisplayController.searchResultsTableView) {
    [self performSegueWithIdentifier: @"showRecipeDetail" sender: self];
}


 }

可能是什么问题?

如果您有关于单元格选择的
segue
,则不应写入
if(tableView==self.searchDisplayController.searchResultsTableView){
[self-PerformsgueWithIdentifier:@“ShowRecipedDetail”发件人:self];
}

如果需要推送difference
VC
,则应将segue从VC添加到VC,而不是从
UITableViewCell
。 和使用:


你在:-(作废)准备工作中做过什么吗?(UIStoryboardSegue*)segue sender:(id)sender?嗯,我知道了。我做了一个关于细胞选择的赛格。当我删除disSelect功能时,它起作用了。当我调用此函数时,是否调用segue 2次?@AhmetTanakol,如果您调用[self-PerformsgueWithIdentifier:@“ShowRecipedDetail”发送方:self];在
DidSelectRow
中,您可以调用segue两次。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if (tableView == self.searchDisplayController.searchResultsTableView) {
    [self performSegueWithIdentifier: @"showRecipeDetail" sender: self];
}
else
{
    [self performSegueWithIdentifier: @"showDifferentVC" sender: self];
}

 }