UIWebview se convierte en zombies en didReceiveMemoryWarning

Tengo una uiwebview que conecto a través de IB a mi UIViewController. En el controlador.h, defino

@property (nonatomic, unsafe_unretained) IBOutlet UIWebView *myUIWebView;

Estoy compilando para iOS 4.3, así que necesito el unsafe_unretained (de lo contrario, usaría débil)

Configuré el delegado de UIWebView para que sea UIViewController en IB.

Si el controlador obtiene didReceiveMemoryWarning mientras no se muestra (es decir, estoy en la siguiente pantalla), la vista web está bien (apunta a una vista web válida) justo antes [super didReceiveMemoryWarning] y se convierte en zombi inmediatamente después de la llamada. ¿Esto es normal? He leído que debido a que ahora es un zombi, no puedo establecer su delegado en nil en el controlador dealloc.
Entonces, si es "normal" que sea un zombi, ¿debería establecer el delegado en nil en dealloc?

gracias

preguntado el 22 de mayo de 12 a las 19:05

1 Respuestas

Establecer delegado a cero en viewWillUnload or viewDidUnload me gusta-

- (void)viewWillUnload {
    [webView setDelegate:nil];
}

contestado el 22 de mayo de 12 a las 20:05

hmmm... pero si configuro el delegado en nil en dealloc, aún se configurará... He verificado y no se llama a viewWillUnload cuando 'desapilé' el controlador (cuando terminé con el proceso de compra y volver a la pantalla principal) - user1375594

oups... Si NO configuro el delegado en cero - user1375594

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.