У меня есть развязка, которую я использую, и затем у меня есть подготовка к segue, которую я использую для ввода данных. Мне нужно размотать segue, чтобы подтолкнуть данные, но у меня возникают проблемы с их объединением. Вот размотки код Segue -Нажатие данных с развязкой segues
- (IBAction)unwindFromDetailViewController:(UIStoryboardSegue *)segue {
// ViewController *detailViewController = [segue sourceViewController];
NSLog(@"%@", segue.identifier);
}
А вот готовиться к SEGUE кода -
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"showRecipeDetail"]) {
NSIndexPath *indexPath = nil;
Recipe *recipe = nil;
if (self.searchDisplayController.active) {
indexPath = [self.searchDisplayController.searchResultsTableView indexPathForSelectedRow];
recipe = [searchResults objectAtIndex:indexPath.row];
} else {
indexPath = [self.tableView indexPathForSelectedRow];
recipe = [recipes objectAtIndex:indexPath.row];
}
PersonDetailTVC *destViewController = segue.destinationViewController;
destViewController.recipe = recipe;
[self dismissViewControllerAnimated:YES completion:nil];
}
}
А вот то, что я пытался, который разматывания SEGUE, но не толкая данные.
- (IBAction)unwindFromDetailViewController:(UIStoryboardSegue *)segue {
if ([segue.identifier isEqualToString:@"CustomTableCell"]) {
NSIndexPath *indexPath = nil;
Recipe *recipe = nil;
if (self.searchDisplayController.active) {
indexPath = [self.searchDisplayController.searchResultsTableView indexPathForSelectedRow];
recipe = [searchResults objectAtIndex:indexPath.row];
} else {
indexPath = [self.tableView indexPathForSelectedRow];
recipe = [recipes objectAtIndex:indexPath.row];
}
PersonDetailTVC *destViewController = segue.destinationViewController;
destViewController.recipe = recipe;
[self dismissViewControllerAnimated:YES completion:nil];
}
}
Вы продолжаете повторять тот же вопрос, но я уже направил вас на этот пост со многими ответами по одной и той же точной теме - «Могу ли я возвращать данные, когда я разматываю segue?» http://stackoverflow.com/q/13038622/2274694. Я предлагаю вам проверить это. –
И если ваш вопрос не отвечает, вместо того, чтобы повторять тот же самый точный вопрос 3 раза, я предлагаю вам работать над ним, чтобы сделать его более ясным. –
Вы специально установили идентификатор для своего * разматывания segue *? Я подозреваю, что вы просто используете свой идентификатор * segue * и что ваш 'if ([segue.identifier isEqualToString: @" showRecipeDetail "])' в 'prepareForSegue' возвращает false и, следовательно, блок вообще не выполняется. (Эта строка: '[self rejectViewControllerAnimated: YES complete: nil];' совершенно не нужно.) –