ios uitableview uitableviewcell reuse tiene datos antiguos

todos sabemos que la celda en uitableview se puede volver a generar, pero estoy viendo algunos resultados extraños. Estoy creando una celda personalizada, cada celda tiene 4 columnas, cada columna tiene una image, por lo que el formatting es como este | img | img | img | img | después de que se devuelve la celda, estoy configurando cada celda, un ejemplo sería configurar la primera columna en la image 1, luego la segunda columna en otra image

ahora solo asumo que solo puedo mostrar dos filas a la vez en la vista de tabla:

|a0|a1|a2 |a3 | |b4|b5|b6 |b7 | ------cell c not visible to user------ |c8|c9|c10|c11| 

a medida que el usuario se desplaza hacia abajo, la columna 'a' (a0-a3) anterior se volverá invisible, y si sé que esa celda se vuelve invisible, se reutilizará para la columna c

el ejemplo anterior funciona bien, si puedo ocupar completamente cada celda / fila, es decir, tengo un total de 12 imágenes.

pero si tengo que decir 10 imágenes (la última fila se llenará con solo 2, y las otras dos están vacías, como la siguiente:

 |a0|a1|a2 |a3 | |b4|b5|b6 |b7 | ------row/cell 'c' not visible to user------ |c8|c9|empty|empty| 

sin embargo, surge un problema, cuando me desploop para ver la celda / fila 'c', tengo la siguiente image:

 |a0|a1|a2 |a3 | ------row/cell 'a' not visible to user------ |b4|b5|b6 |b7 | |c8|c9|a2|a3| 

observe que las últimas dos columnas de la fila / celda deben estar vacías, pero que muestran a2 y a3 en su lugar

¿Cómo puedo arreglar esto? Estoy pensando en una forma manual de hacer esto, es decir, mediante la comprobación de si debería eliminar vistas innecesarias, etc. cuando se reutiliza, pero podría ser más complicado ¿hay una manera más sistemática de hacerlo que sea más fácil y más limpia?

¿Hay alguna forma de que podamos pedirle a la célula que regresó que olvide su contenido o tengo que hacerlo yo mismo?

Gracias

Tuve un problema similar recientemente. Anular prepareForReuse después de la subclass la celda de tablaview lo arregló. ¿Tienes la respuesta desde aquí?

Tienes que hacerlo tú mismo". Cada vez que se reutiliza UITableViewCell, conserva sus contenidos anteriores. Si desea que se restablezca / borre, debe hacerlo manualmente.

En su UITableViewCell personalizado, puede anular prepareForReuse y restablecer el contenido que desee o hacerlo al configurar el nuevo contenido.

En su caso, la configuration de la propiedad de la image de UIImageView a nil en las cuatro columnas debería funcionar.