2010-01-03 3 views
0

Existe-t-il un moyen de surveiller quel contrôleur de vue le contrôleur de navigation avait avant de pousser sur le contrôleur de vue actuel. aussi le contraire, quel contrôleur de vue il a sauté de la pile avant d'arriver au contrôleur de vue en cours?Surveillance de la pile UINavigation

Nous vous remercions à l'avance

Répondre

1
NSArray *viewControllerArray = [self.navigationController viewControllers]; 
NSUInteger parentViewControllerIndex = [viewControllerArray count] - 2; 
NSLog(@"Parent view controller: %@", [viewControllerArray objectAtIndex:parentViewControllerIndex]); 

Cela devrait être suffisant pour définir une propriété qui conserve la trace des propriétés du dernier contrôleur de vue Popped.

+0

merci, exactement ce que je cherchais – Makinitez21

1
  1. Pour le contrôleur de vue qui était au-dessus avant qu'un nouveau a été poussé, vous pouvez vérifier l'objet à l'index n-2 dans la propriété viewControllers du contrôleur de navigation

  2. Pour le contrôleur de vue qui a été sauté, je pense que vous devriez garder une trace de vous-même. Vous pouvez utiliser une variable statique ou un singleton.

+0

merci, juste ce dont j'avais besoin pour me donner un début – Makinitez21