Question

J'ai la structure suivante dans mon application (iPad, iOS 5):

UIView1 -.> UIView2 (modal présenté)

J'ai un trafic de classe personnalisée avec un service REST. Cette classe gère tout le mapping, routage, etc. nécessaires. Il y a un objet dans UIView1 en utilisant cette classe.

De UIView1 je présente les UIView2 (modal) qui a un UIWebView inclus, montrant une partie du contenu HTML et des documents PDF (selon ce qui a été choisi UIView1 par l'utilisateur).

il ressemble parfois UIView1 get désallouée en arrière-plan pendant que l'utilisateur est en UIView2.

Si l'utilisateur se ferme maintenant UIView2 au retour à UIView1, les accidents de l'application. L'erreur est de type "RestKit Mapping pour ... existe".

Il semble à moi, que UIView1 a été désallouée, et est maintenant construire en arrière-plan, mais l'objet RestKit vit encore. RestKit est un objet partagé (Singleton).

Quelle est la bonne façon d'obtenir ce runnning?

Était-ce utile?

La solution

Le viewDidLoad n'est pas un bon endroit pour mettre en place les correspondances de RestKit - cette méthode peut être appelée plusieurs fois dans une vie du contrôleur.

Un bon (et sûr) pour initialiser lieu RestKit et mettre en place toutes les applications est - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions dans votre AppDelegate. De cette façon, vous pouvez être sûr que le processus de configuration se fait qu'une seule fois et avant peut envoyer toute demande potentielle.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top