Altura dinámica de UITableView con objetos Core Data

He estado tratando de resolver un misterio los últimos días en cuanto a por qué mi NSFetchedResultsController con un tamaño de lote de 20 siempre fallaría (es decir, cargaría en la memoria) todos mis objetos inmediatamente cuando se completó la recuperación, lo que provocó que la solicitud tomar ~ 20 segundos.

Resulta que se debió a que en mi heightForRowAtIndexPath, la altura se basaba en la longitud de una propiedad NSString de cada objeto extraído, y así, al volver a cargar la tabla, si la tabla tiene 2000 filas, la altura se calcula para cada fila en Al principio, y dado que accedo a una propiedad de texto del objeto, fallaría en 2000 objetos (en 20 lotes de tamaño) desde el principio, lo que causaría una eternidad. (No sabía que las alturas de las filas se calculaban al principio).

Entonces, la pregunta es si tengo un controlador de resultados de búsqueda con un tamaño de lote de 20, pero mis alturas de filas se basan en una propiedad de texto del objeto, que si intento acceder causaría que el objeto ya no sea un error, pero realmente cargado en la memoria, ¿cuál sería una solución para calcular la altura?

¿Cuáles son mis opciones?

Respuestas a la pregunta(2)

Su respuesta a la pregunta