2009-11-20 7 views
2

Je veux enregistrer l'état de mon contrôleur de vue. J'ai cherché et trouvé que je devrais sauver l'état en sauvegardant des variables d'état.iPhone - Comment enregistrer l'objet contrôleur de vue lui-même?

Mais je suis intéressé à enregistrer l'objet contrôleur de vue lui-même. Y at-il un moyen de sauvegarder l'objet contrôleur de vue lui-même de sorte que lorsque je redémarre l'application, je vois le même état d'affichage sur lequel j'étais avant de fermer l'application. Sinon, je dois atteindre cet état moi-même et cela ne résoudra pas complètement le but car quelque chose comme (l'annonce de l'admob qui était affichée) ne pourrait pas être restauré.

Si je me trompe à un endroit ou si je manque quelque chose, guidez-moi.

Répondre

2

Examinez l'implémentation de NSCoding dans toutes les classes que vous voulez conserver. Si vous implémentez correctement cela et que vous codez votre graphe d'objet sur un noeud racine (comme un contrôleur de barre d'onglets ou un contrôleur de barre de navigation) avec NSKeyedArchiver/NSKeyedUnarchiver lorsque votre application se termine et démarre, vous pouvez enregistrer et restaurer l'état d'un Voir le contrôleur facilement. UIViewController et UIView l'implémentent par défaut, donc tout ce que vous avez à faire est de surcharger les méthodes encodeWithCoder: et decodeWithCoder: appelez super et sauvegardez les variables d'état dont vous avez besoin.