Quand est viewDidLoad appelé?
Est-il sûr de supposer qu'un attribut, à savoir fetchedResultsController
, de chatViewController
, une instance d'une sous-classe de UITableViewController
, est toujours nil
quand viewDidLoad
est appelé, en supposant qu'il est défini à nil
dans viewDidUnload
? Ouf!
Si c'est le cas, alors je ne vois pas de besoin immédiat de redéfinir la fonction d'accès comme dans Xcode exemple d'application de CoreDataBooks. Je préfère suffit de mettre ce code dans viewDidLoad
au lieu de dans une fonction distincte, parce que c'est le seul endroit où je vais l'utiliser.
Vous devez vous connecter pour publier un commentaire.
viewDidLoad est appelée après que votre vue est chargé. Si oui ou non fetchedResultsController est nul ou pas dépend de la façon dont le viewController est initialisé. Par exemple, lors de la création de la
detailViewController
, vous pouvez définir sesfetchedViewController
avantviewDidLoad
est appelé:Cela dit, alors nul avec fetchedResultsController dans viewDidUnload permettrait de s'assurer que c'est nul.
ViewDidLoad Appelé dans Ces Secnarion:-
1.lorsque l'on pousse le point de vue du contrôleur, après la création de son objet par des enchaînements ou par stoary id de carte.
2.il a appelé plus d'une dans le cas de la création de l'instance plus de temps dans l'application et le pousser encore et encore.par exemple:-si vous mettez en œuvre comme coaursal(que d'avoir le nécessaire pour contrôleur supplémentaire pendant le défilement) comme ça, c'est le besoin de sorte qu'il peut appelé plusieurs fois viewDidLoad.
3.il a appelé lorsque la totalité de la mémoire de l'instance (uiviewcontroller et c'est la sous-classe instanciée), cela signifie que notre point de vue est prêt à charger dans la mémoire avec l'adresse.
4.Rappelez-vous que seuls des enfants de la classe de l'objet contrôleur est créé..parent de la classe de l'objet jamais été instancié lors de la normale Secnarion.
Vous devez supposer que viewDidLoad peut être appelée plusieurs fois. Si il ya un avertissement de mémoire envoyé, votre point de vue contrôleur de décharger le point de vue de la mémoire, et la prochaine fois que cela est nécessaire viewDidLoad sera appelée.
viewDidLoad
ne sera pas appelé plusieurs fois consécutivement.fetchedResultsController
dansviewDidLoad
etnil
dansviewDidUnload
, alors je ne vais pas être inutilement réglage de nouveau dansviewDidLoad
? En d'autres termes,viewDidUnload
est toujours appelée avant un autre appel deviewDidLoad
, correct?viewDidLoad
est appelée que lorsque la vue est instancié pour la première fois . Si vous n'êtes pas recréer la vue-contrôleur à chaque fois dans votre application, vous n'obtiendrez qu'il a appelé une fois (et de nouveau appelé si vous obtenez un avertissement de mémoire, et la vue est nul suite).