Mi aplicación se cuelga cuando lanzo mi UITableView
mientras estoy animando. La aplicación funciona sin problemas siempre que la animación se complete. A continuación se muestra el resultado de un golpe en la que se pide UIButton
[tableView setContentOffset:offset animated:YES];
y luego un rayo toque rápido en la backBarButtonItem
que aparece la UITableViewController
:¿Hay alguna manera de cancelar un UITableView/UIScrollView setContentOffset animado:?
#0 0x31ec3ebc in objc_msgSend
#1 0x33690248 in -[UIScrollView(UIScrollViewInternal) _scrollViewAnimationEnded]
#2 0x30defa14 in -[NSObject performSelector:withObject:]
#3 0x33690098 in -[UIAnimator stopAnimation:]
#4 0x3368fb7c in -[UIAnimator(Static) _advance:]
...
nunca he visto un accidente en _scrollViewAnimationEnded
y al parecer tampoco lo ha hecho Google. He intentado llamar al [tableView setContentOffset:offset animated:NO];
desde el UITableViewController
del método - (void)viewWillDisappear:(BOOL)animated
, pero esto no resolvió el problema.
¿Alguna idea para detener un UITableView
o UIScrollView
en medio de la animación?
No estoy liberando de forma explícita la tabla vista: el problema ocurrió cuando su controlador se desconectó de la vista (y si el controlador de navegación lo eliminó de la memoria). Aún así, creo que lo resolvió ... desde que asigné y anulé el delegado de la vista de tabla cuando la vista aparecerá/desaparecerá, no he podido reproducir este bloqueo. ¡Gracias! –
Por cierto, vi este bloqueo incluso cuando uso ARC. ¡Asegúrese de eliminar los delegados de la mesa manualmente! – MikecheckDev