formas eficientes de la inserción de una nueva célula en una UITableView ordenados?
-
11-09-2019 - |
Pregunta
Estoy tratando de insertar una nueva célula en una vista de tabla, donde se ordena los datos. ¿Hay una manera fácil y eficiente de hacer esto mediante la API?
La forma más sencilla parece estar insertar los nuevos datos en un NSMutableArray, clasificar usando un descriptor de clase, y llamar a reloadData. Esto sólo debe volver a mostrar las filas visibles, por lo que no se ve tan mal.
¿Sería que vale la pena hacer una búsqueda binaria en la matriz de datos, insertar los datos y luego insertar la celda?
Solución
En realidad depende de cuántas filas están en su mesa. Si su tabla sólo tiene alrededor de 10 filas, simplemente añadiendo los datos a su NSMutableArray
, recurriendo, y recargar el UITableView
debe estar muy bien.
Por otro lado, si la tabla tiene cientos o miles de filas, que son sin duda va a querer hacer algo más eficiente. Utilizando una búsqueda binaria que introducir sus datos en su NSMutableArray
es una buena idea. Entonces todo lo que tiene que hacer es llamar de UITableView
insertRowsAtIndexPaths:withRowAnimation:
para agregar la fila a la tabla de vista real. No se requiere recarga.