UITableView altura de una sección

Tengo un UITableView que tiene 3 secciones. Mis celdas individuales varían en altura (colapsar-expandir). Necesito una forma de calcular la altura de cada sección individual, es decir, la suma de las alturas de las celdas en cada sección. Preferiblemente sin calcular todo lo que tableView ya ha hecho cada vez que lo necesito.

¿Hay alguna forma de deducir o acceder a dicho valor?

preguntado el 16 de mayo de 11 a las 18:05

2 Respuestas

Miraste -rectForSection: (y posiblemente también -rectForFooterInSection:)?

contestado el 16 de mayo de 11 a las 22:05

Incluso tiene en cuenta las células en expansión / colapso sin que yo tenga que hacer nada. Perfecto. Muchas gracias (especialmente porque estaba ahí en el manual frente a mí todo el tiempo). - RickiG

No hay una forma fácil de calcular el valor, sin embargo, existe una forma. Si sus celdas tienen una altura fija, son solo las muchas filas multiplicadas por su altura fija para cada sección.

Si también tiene una altura variable en las celdas, optaría por una matriz que contenga la altura total para cada sección, solo calcule una vez y manténgala en caché allí. Si la sección está contraída, solo necesita la altura del encabezado de la sección; de lo contrario, es el valor de la matriz.

contestado el 16 de mayo de 11 a las 22:05

Gracias Nick, había empezado a diseñar una solución como la que sugieres, pero la sobrecarga / código adicional que generaría me hizo preguntar aquí, afortunadamente. :) - RickiG

@RickiG si se trata de rendimiento, creo que la solución anterior no es ideal, coloque un punto de interrupción en su heightForRowAtIndexPath y vea con qué frecuencia se llama, sin embargo, es más conveniente :) - Nick Weaver

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.