prepareForSegue вызывается перед didSelectRowAtIndexPath только при добавлении третьего перехода

У меня 3 перехода к 3 различным взглядам. 2 реализованы без проблем, именно когда возникает третий, возникают проблемы.

У меня есть следующий метод didSelectRowAtIndexPath:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    NSLog(@" ----------  did select row");

    if(indexPath.section == 0){
        if(indexPath.row == [self.data count]-1){
            //prior to adding this, everything works
            [self performSegueWithIdentifier:@"MoreComments" sender:self];
        }else{
            [self performSegueWithIdentifier:@"FriendView" sender:friend];
        }
    }else if(indexPath.section == 1){
        if(indexPath.row == [self.data2 count]-1){
            [self performSegueWithIdentifier:@"MorePosts" sender:self];
        }else{
            [self performSegueWithIdentifier:@"FriendView" sender:friend];
        }
    }
}

У меня есть следующий метод prepareForSeque:

-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    if([segue.identifier isEqualToString:@"MorePosts"]){
        MorePostsViewController *mfamvc = segue.destinationViewController;
        mfamvc.data = self.data;
    }else if([segue.identifier isEqualToString:@"FriendView"]){
        FriendViewController *fvc = segue.destinationViewController;
        fvc.friend = friend;
    }else if([segue.identifier isEqualToString:@"MoreComments"]){
          MoreCommentsViewController *mcvc = segue.destinationViewController;
          mcvc.data = self.data2;
    }
}

Перед перетаскиванием элемента управления из моей ячейки в последний вид я вижу, что моя программа нажимает «Отбой» и затем готовится к операции. Это делает всю навигацию просмотра идеальной.

Как только я контролирую перетаскивание из своей ячейки в MoreCommentsViewController, я начинаю видеть ошибку:

вложенная push-анимация может привести к повреждению панели навигации. Завершение перехода в непредвиденное состояние. Дерево подпунктов панели навигации может быть повреждено.

Я замечаю, что теперь также готовятся к вызову дважды, сначала вызывается подготовка к вызову, затем выбирают команду, затем снова готовят запрос.

Что я делаю не так, чтобы условно перейти к этим разным взглядам?

Ответы на вопрос(2)

Ваш ответ на вопрос