2010-10-11 16 views

risposta

3

Releasing oggetti è vostra responsabilità, così si dovrebbe rilasciare il controller della vista da soli, sia dopo aver chiamato presentModalViewController, o qualche tempo dopo (non raccomandato)

Ad esempio:

MyController *controller = [[MyController alloc] init]; 

[self presentModalViewController:controller animated:YES]; 

// "controller" is automatically retained, so you can call release right away  

[controller release]; 

Calling dismissModalViewController più tardi rilascerà automaticamente il controller mantenuto.

+0

Phillip - grazie. Questa riga di codice: [[Mycontroller alloc] initwithNib .... qual è il numero di ritenzione su questo oggetto - 1 o 2? – GuybrushThreepwood

+0

Sarà uno, ma non importa. Pensa alla proprietà dell'oggetto, non conservare il conto. Sei sempre responsabile per il rilascio di tutto ciò che hai assegnato o mantenuto. Sempre. –

+0

Nell'esempio precedente, perché viene mantenuto automaticamente il "controller"? Sono confuso su come puoi assegnare il controller nella prima riga e poi rilasciarlo immediatamente - non lo lascia con un conteggio di ritenzione pari a 0 che lo svuoterebbe? Grazie. – GuybrushThreepwood

Problemi correlati