soy eliminar algunas filas en UITableView así:UITableView borrar y recargar las células
[tableView deleteRowsAtIndexPaths:toDelete withRowAnimation:UITableViewRowAnimationAutomatic];
Esto añade una bonita animación a la operación de eliminación.
Sin embargo, después de eliminar necesito actualizar todas las filas visibles actualmente. Llamando a
[tableView reloadData];
justo después de que la primera llamada funciona, pero el efecto de animación agradable se ha ido. ¿Cuál es una mejor manera de hacer esto? es decir, para animar la operación de eliminación y actualizar todas las filas visibles actualmente? Gracias!
La razón por la que tengo que hacer esto es porque cada celda contiene una 'casilla de verificación'. Mi controlador de vista es delegado de casilla de verificación y cada casilla de verificación tiene un NSIndexPath asociado. Cuando se activa la casilla de verificación, se llama a delegar diciéndole oye, cambiamos para x ruta de índice. Ahora, si se eliminan algunas filas, las rutas de índice deben actualizarse. Es por eso que necesito volver a cargar todo para que cada casilla sepa a dónde pertenece.
¿Por qué necesita forzar una recarga después de eliminar? (¿No se puede eliminar la fila de la fuente de datos antes de llamar a deleteRowsAtIndexPaths, o está pasando algo más significativo?) –
No recuerdo si funciona, pero ¿ha intentado hacer la eliminación a nivel de modelo, y luego simplemente envolviendo 'reloadData' en un bloque' [UIView animateWithDuration ...] ' –
@middaparka actualizaré mi pregunta explicando exactamente por qué tengo que hacer esto. – 0xSina