J'ai créé un panneau de paramètres pour mon application avec un curseur que vous pouvez définir sur "Effacer les préférences au prochain lancement" (dans l'application principale des paramètres de l'iPhone). Dans le délégué de mon application, j'ai fait en sorte que applicationWillEnterForeground vérifie si le commutateur de réglage a été défini dans les préférences et efface mes paramètres avec: [NSUserDefaults standardUserDefaults] setPersistentDomain:[NSDictionary dictionary] forName:[[NSBundle mainBundle] bundleIdentifier]];
si nécessaire. Ma question est: Si viewDidLoad et viewDidAppear dans mon vue contrôleur ne fonctionne pas après avoir fait les changements de paramètres en raison de la rapide app de commutation iOS 4 (la vue est toujours chargée lorsque je reviens de l'application de paramètres), comment puis-je signaler à ces contrôleurs de vue que les paramètres ont été réinitialisés afin qu'ils puissent recharger toutes leurs données? Si seulement il y avait un moyen d'appeler [MainViewController initData] du délégué mais malheureusement, cela ne peut pas être fait. Il semble que, sauf si une action se produit dans le contrôleur de vue, il n'y a aucun moyen de savoir si les paramètres ont été réinitialisés.Meilleure façon de réinitialiser les paramètres d'application dans iOS4 avec commutation rapide des applications
Toute aide serait grandement appréciée.
Merci beaucoup pour votre réponse, Matthew. Je vais voir si je peux mettre en œuvre ceci maintenant et vous le faire savoir (désolé si je suis encore un peu novice). – Jackson
Pas de soucis, il semble avancé mais c'est assez simple une fois que vous l'essayez. –
Cela a fonctionné parfaitement! Merci beaucoup! Vos instructions étaient très claires et très faciles à suivre. J'ai trouvé l'idée du NSNotificationCenter un peu intimidante au début mais maintenant cela semble très simple. Merci encore! – Jackson