En mi aplicación, intento desplazar una UITableView a la parte superior una vez después de actualizar el contenido de la tabla. Sin embargo, bajo alguna circunstancia, mi mesa está VACÍA. Así que me dio la siguiente excepción:iphone dev: cómo detectar excepción 'NSRangeException'
Terminación de aplicación debido a excepción no detectada 'NSRangeException', razón: '- [UITableView scrollToRowAtIndexPath: atScrollPosition: animada:]: fila (0) más allá de los límites (0) de la sección (0). '
¿cómo puedo detectar esta excepción? Probé
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
if (indexPath != nil) {
[EventTable scrollToRowAtIndexPath:indexPath
atScrollPosition:UITableViewScrollPositionTop animated:YES];
}
pero no capta la excepción porque indexPath no es nulo.
Gracias. Esa es la forma en que lo hago. if (([EventTable numberOfSections]> 0) && ([EventTable numberOfRowsInSection: 0]> 0)) { \t \t [EventTable scrollToRowAtIndexPath: [NSIndexPath indexPathForRow: 0 insection: 0] atScrollPosition: UITableViewScrollPositionTop animado: YES]; \t} – Brian
&& serán correctos en lugar de || ? –
@ S.P que depende si está probando si desplazarse, o probar si abortar. –