La ligne de fond est, j'ai travaillé sur une application, et il semble que si je place un UIAlert
dans viewDidLoad
, il est appelé deux fois (à partir d'une méthode déléguée de UIImagePickerController
). Si je le mets en viewDidAppear
, il est appelé une fois. J'ai regardé la documentation mais cela me rend confus.Différence entre viewDidAppear, viewDidLoad dans iPhone/iOS?
6
A
Répondre
8
Un objet UIView peut être chargé en mémoire et libéré plusieurs fois sans jamais être ajouté à la pile de vues et apparaître à l'écran. Je suppose que vous avez 2 références à cette vue (peut-être une dans un fichier nib?), Donc il est chargé, puis relâché lorsque la seconde référence est chargée et affectée à la même propriété, alors seulement ce dernier obtient ajouté à la pile de vue. Vous pouvez le voir en imprimant (NSLog) la valeur entière de self ("% ld", (long int) self) dans les méthodes viewDidLoad et viewDidAppear.
Pourriez-vous poster un message quelconque? – rano
avez-vous essayé de définir un point d'arrêt et de vérifier la pile des appels? – Mark