UITableViewRowAnimation se ignora
Estoy usandoNSFetchedResultsController
para poblar mi mesa. Los datos en mi tabla se ordenan de acuerdo con la marca de tiempo en orden ascendente (último mensaje en la parte inferior). Más datos se cargan a través de "desplazamiento infinito" en la parte superior: por ejemplo, cuando el usuario se desplaza por la parte superior, se cargan más mensajes. MiNSFetchedResultsControllerDelegate
se define como de costumbre, como se recomienda en la documentación de Apple: las nuevas filas se insertan a través de
- (void)controller:(NSFetchedResultsController*)controller
didChangeObject:(id)anObject
atIndexPath:(NSIndexPath*)indexPath
forChangeType:(NSFetchedResultsChangeType)type
newIndexPath:(NSIndexPath*)newIndexPath
{
switch(type) {
case NSFetchedResultsChangeInsert:
NSLog(@"insertion at row %d", newIndexPath.row);
[self.table insertRowsAtIndexPaths:@[newIndexPath]
withRowAnimation:UITableViewRowAnimationNone];
break;
Ahora, aquí está mi problema: cuando se insertan nuevas filas, siempre se animan como deslizarse "hacia abajo". En el pergamino infinito hacia arriba se ve mal. Eso pasa sin importar si lo paso.UITableViewRowAnimationNone
, UITableViewRowAnimationTop
oUITableViewRowAnimationBottom
como parámetro, esa opción parece ser ignorada por completo.
¿Alguna idea de cómo animar la mesa correctamente?