Tengo un UIViewController (llámalo NumberTwo) que presenté como controlador de vista modal desde otro UIViewController (llámalo NumberOne). NumberTwo contiene un método touchesBegan que escucha los toques, y también tiene un método de acelerómetro que escucha los cambios de orientación del dispositivo en la dirección x, y o z. NUMBERTWO tiene un botón llamado "Done" que, cuando se le golpea, descarta como un controlador de vista modal:Aplicación para iPhone: descartar el controlador de vista modal no lo trata
[self dismissModalViewControllerAnimated:NO];
Pero parece como si todavía está escuchando para toques, y todavía está escuchando para las aceleraciones. ¿Cómo puedo liberar completamente NumberTwo cuando lo descarto? Traté de agregar una llamada de liberación de la siguiente manera:
[self dismissModalViewControllerAnimated:NO];
[self release];
pero eso causó un EXEC_BAD_ACCESS.
¿Qué sucede si usa ARC? ¿Cómo destruyes viewController después de despedir? – tybro0103
Si está utilizando ARC, el compilador (en efecto) insertará la [versión del controlador] después de que el controlador se haya presentado de forma modal. No es necesario tomar ninguna medida sobre el despido: iOS se asegurará de que el controlador se libere en estas circunstancias. – Obliquely