Questione : Perdita di memoria nel regolatore modale di vista di Poping

Regolatore controller1 chiamato, sto inserendo un class= modale " i lineNumbers " >
1 del >
 *addController di AddConversationViewController = [[alloc di AddConversationViewController] 
	 initWithNibName: @ pacco " di AddConversationViewController ": zero];
	 //addController.delegate = auto;	 
	 *navigationController di UINavigationController = [[alloc di UINavigationController]
	 initWithRootViewController: addController];
	 [presentModalViewController di auto: navigationController animato: SÌ];
	 [rilascio del addController];
	 [rilascio del navigationController];
class= >


and di
those abbia assegnato prima che non siano liberati né retained.

Does qualcuno sanno riparare questa perdita di memoria?
class= del

Risposta : Perdita di memoria nel regolatore modale di vista di Poping

L'errore di BAD_ACCESS significa che state liberando un oggetto che un'altra funzione attualmente sta usando.  Fare funzionare il vostro codice come questo:

       *addController di AddConversationViewController = [[alloc di AddConversationViewController]
       initWithNibName: @ pacco " di AddConversationViewController ": zero];
       //addController.delegate = auto;       
       *navigationController di UINavigationController = [[alloc di UINavigationController]
       initWithRootViewController: addController];
       [presentModalViewController di auto: il navigationController ha animato: SÌ];
       [rilascio del addController];
                      NSLog (@ " dopo addController liberato ");
       [rilascio del navigationController];
                      NSLog (@ " dopo navigationController liberato ");

Ciò aggiunge alcuni messaggi di sezione comandi prima che liberiate ciascuno dei vostri oggetti.  Se vedete dopo che il addController ha liberato in vostra sezione comandi, sapere che [rilascio del addController]; non sta causando il vostro arresto.  Se vedete entrambi quei messaggi di sezione comandi, sapere che nessun di quelle dichiarazioni stanno causando un arresto, ma molto probabilmente, una di quelle 2 dichiarazioni del rilascio sta causando l'arresto.  Sto pensando che [rilascio del navigationController]; la dichiarazione sta causando il vostro arresto perché avete bisogno di quello di spostare le viste via il vostro navigationController.  Se rimuovete quella linea, non dovreste arrestarti.  L'eliminazione del addController non dovrebbe causare un arresto perché avete fatto appena quello per spostare la vista e non fa niente altro.  Se avete nuove domande, ritenere prego libero di chiedermi riguardo loro.
Altre soluzioni  
 
programming4us programming4us