Zwei Fälle:
1) Segue
vom viewController
verbunden
Anruf segue
von Ihrem didSelectRowAtIndexPath
Methode, übergeben indexPath
als sender
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[self performSegueWithIdentifier:@"Action" sender:indexPath];
}
Dann können Sie indexPath als Absender in prepareForSegue:sender:
Verfahren erhalten
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"Action"])
{
NSIndexPath *indexPath = (NSIndexPath *)sender;
SecondViewController *destViewController = segue.destinationViewController;
destViewController.getString = [getArray objectAtIndex:indexPath.row];
}
}
2) segue vom
Keine Notwendigkeit Zelle verbunden didSelectRowAtIndexPath
Verfahren zu implementieren und performSegueWithIdentifier:
.Sie direkt sender
als UITableviewCell
in prepareForSegue:sender:
Verfahren erhalten.
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"Action"])
{
NSIndexPath *indexPath = [self.tableView indexPathForCell:sender];
SecondViewController *destViewController = segue.destinationViewController;
destViewController.getString = [getArray objectAtIndex:indexPath.row];
}
}
Pls self.tbl überprüfen! = Nil – Matz
Sie haben nicht Verbindung von tbl-Variable zu Tabellenansicht in Storyboard hergestellt. – Rajesh