Hallo zusammen,
ich bin neu in der Community und hoffe ihr könnt mir bei meinem Problem helfen
Leider habe ich hierzu noch nichts ganz passendes gefunden.
Ich möchte eine iPhone-App entwickeln, welche im ersten Schritt eine n Layer tiefe Navigation anzeigt.
Jedem Navigationspunkt kann eine weitere Navigationsebene ODER eine Maske zugeordnet sein. Beim Klick auf den Navigationspunkt prüfe ich, was von beidem der Fall ist.
Sollte nun ein Untermenü vorhanden sein, so möchte ich den aktuellen MasterViewController erneut aufrufen und ihm anschließend in prepareForSeque das Submenü mitgeben.
Ist jedoch eine Maske vorhanden, so möchte ich den DetailViewController aufrufen.
Ich verwende Storyboards und hatte hier bereits ZWEI Segues definiert, was jedoch dazu führte, dass sie beide unterschiedliche Auslösepunkte hatten.
Es wurde das Informations-Icon angefügt über welches ich den zweiten Segue ansteuern konnte, was nicht das ist was ich möchte.
Entferne ich einen oder beide Segues und versuche sie in tableView:didSelectRowAtIndexPath: aufzurufen bekomme ich den (verständlichen) Fehler, dass der entsprechende Segue nicht vorhanden ist, bzw. gefunden wurde.
Also dachte ich mir ich erstelle einen neuen Segue welcher auf diesen Identifier hört, was aber zu gleichem Ergebnis geführt hatte.
Ich würde mich sehr freuen, wenn ihr mir behilflich sein könntet.
Gruß
ThaHe4dHunt3r
EDIT: Quellcode angefügt
Alles anzeigen
ich bin neu in der Community und hoffe ihr könnt mir bei meinem Problem helfen
Leider habe ich hierzu noch nichts ganz passendes gefunden.
Ich möchte eine iPhone-App entwickeln, welche im ersten Schritt eine n Layer tiefe Navigation anzeigt.
Jedem Navigationspunkt kann eine weitere Navigationsebene ODER eine Maske zugeordnet sein. Beim Klick auf den Navigationspunkt prüfe ich, was von beidem der Fall ist.
Sollte nun ein Untermenü vorhanden sein, so möchte ich den aktuellen MasterViewController erneut aufrufen und ihm anschließend in prepareForSeque das Submenü mitgeben.
Ist jedoch eine Maske vorhanden, so möchte ich den DetailViewController aufrufen.
Ich verwende Storyboards und hatte hier bereits ZWEI Segues definiert, was jedoch dazu führte, dass sie beide unterschiedliche Auslösepunkte hatten.
Es wurde das Informations-Icon angefügt über welches ich den zweiten Segue ansteuern konnte, was nicht das ist was ich möchte.
Entferne ich einen oder beide Segues und versuche sie in tableView:didSelectRowAtIndexPath: aufzurufen bekomme ich den (verständlichen) Fehler, dass der entsprechende Segue nicht vorhanden ist, bzw. gefunden wurde.
Also dachte ich mir ich erstelle einen neuen Segue welcher auf diesen Identifier hört, was aber zu gleichem Ergebnis geführt hatte.
Ich würde mich sehr freuen, wenn ihr mir behilflich sein könntet.
Gruß
ThaHe4dHunt3r
EDIT: Quellcode angefügt
Quellcode
- - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
- {
- AvERPNavigationItem* navItem = [navigationRows objectAtIndex:indexPath.row];
- if ([navItem hasChilds])
- {
- [self performSegueWithIdentifier:@"showSubNavigation" sender:self];
- }
- else
- {
- [self performSegueWithIdentifier:@"showDetail" sender:self];
- }
- }
- - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
- {
- NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
- AvERPNavigationItem* navigationRow = navigationRows[indexPath.row];
- if ([[segue identifier] isEqualToString:@"showDetail"])
- {
- DetailViewController* detailController = [segue destinationViewController];
- [detailController setDetailItem:navigationRow];
- }
- else if ([[segue identifier] isEqualToString:@"showSubNavigation"])
- {
- MasterViewController* navController = [segue destinationViewController];
- [navController setParentNavigationItem:navigationRow];
- }
- }