ios - ejemplo - uitableview tutorial
Cómo crear NSIndexPath para TableView (4)
Para Swift 3 es ahora: IndexPath(row: rowIndex, section: sectionIndex)
Necesito eliminar la fila 1 de una tabla en una función que he definido. Para utilizar deleteRowAtIndexPath
, debe usar una IndexPath
con una sección y una fila definidas. ¿Cómo puedo crear una ruta de índice como esta?
Una matriz con el int {1} como su único miembro se bloqueará; El mensaje NSLog indica que la sección también debe definirse.
* Editar -> Código relacionado con la eliminación de celdas:
NSIndexPath *myIP = [[NSIndexPath alloc] indexPathForRow:0 inSection:0];
NSArray *myArray = [[NSArray alloc] initWithObjects:myIP, nil];
// [self.tableView beginUpdates];
[self.tableView deleteRowsAtIndexPaths:myArray withRowAnimation:UITableViewRowAnimationFade];
// [self.tableView endUpdates];
Respuesta obligatoria en Swift: NSIndexPath(forRow:row, inSection: section)
Notará que NSIndexPath.indexPathForRow(row, inSection: section)
no está disponible en swift y debe usar el primer método para construir indexPath.
Use [NSIndexPath indexPathForRow:inSection:]
para crear rápidamente una ruta de índice.
Edición: En Swift 3:
let indexPath = IndexPath(row: rowIndex, section: sectionIndex)
indexPathForRow
es un método de clase!
El código debe leer:
NSIndexPath *myIP = [NSIndexPath indexPathForRow:0 inSection:0] ;