Sur l'iPhone, nous pouvons simplement utiliser (void) viewDidAppear:(BOOL)animated;
pour effectuer des actions quand une vue devient le focus. Dans certains cas, nous avons une vue modale avec une autre vue modale et, sur l'iPhone, la fermeture de la vue modale la plus haute déclenchera viewDidAppear pour la vue modale inférieure.Comment savoir quand un UIView obtient le focus
Ce n'est pas le cas pour l'iPad, car la vue reste "visible" même si elle est derrière une autre vue modale. Est-il possible de dire à partir d'un UIViewController quand la vue elle-même devient la vue active?
Le problème est que nous devions alors établir un lien entre les deux vues modales et dire à l'autre d'effectuer des actions lorsque, idéalement, nous aimerions que la première vue modale effectue des actions à chaque fois qu'elle devient active. – mjdth
Sur le contrôleur de vue présenté de manière modale, remplacez la méthode animée ViewDidDissapear: et mettez '[self.parentViewController viewDidAppear: animé];'. Cela signifiera que ViewDidAppear du premier viewcontroller est envoyé/appelé lorsque le second contrôleur de vue modale disparaît et que le premier apparaît. Donc, vous devez simplement mettre toutes les actions que vous souhaitez exécuter avec le premier contrôleur de vue lorsqu'il devient actif dans ViewDidAppear comme vous le feriez normalement sur iphone. –
Cela semble fonctionner. Nous sommes allés avec une méthode légèrement différente, mais j'aurais probablement fait cela avant si nous y pensions. – mjdth