iphone - tutorial - Actualizar el estilo de edición de UITableViewCell dependiendo de los contenidos
uitableview tutorial swift 4 (2)
Luché este mismo problema ayer. Básicamente, debes alternar la propiedad del modo de edición de la vista de tabla. Después de hacer eso, actualizará el estilo de edición de su celda.
Aquí está el código que me hace el truco:
self.tableView.editing = NO;
self.tableView.editing = YES;
Esto da lo que me parece que es exactamente el mismo tipo de efecto que la aplicación de contactos. Como mínimo, actualizará su estilo de edición.
Estoy creando una interfaz basada en tablas similar a los Contactos del iPad, en la que el usuario puede agregar a una lista de filas tocando una fila en blanco en la parte inferior. La tabla está siempre en modo de edición, y las filas que no están en blanco deben tener un icono de edición de eliminación estándar a la izquierda. Tan pronto como el usuario comience a escribir en la última fila en blanco, se debe agregar un ícono de eliminación a la izquierda (y se agrega una nueva fila en blanco).
¿Alguien sabe cómo hacer que UITableView actualice el estilo de edición bajo demanda? Todo funciona, excepto que el ícono de eliminar no aparece hasta que el usuario se desvía de la vista y luego vuelve a la vista.
Aquí está mi implementación editingStyleForRowAtIndexPath:
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView
editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (/* text field contains data */)
{
return UITableViewCellEditingStyleDelete;
}
else
{
return UITableViewCellEditingStyleNone;
}
}
Intenta llamar a reloadRowsAtIndexPaths:withRowAnimation:
en la fila que se está editando. (No estoy seguro de si eso arruinará el estado del primer respondedor en su campo de texto o no).