Pregunta

Dependiendo del resultado de una condición, quiero mostrar un UIImageView en una celda de la tabla.De lo contrario, la pantalla UITableViewCellAccessoryCheckmark.Me gustaría construir la célula en IB.La parte no estoy seguro de qué hacer con el UIImageView cuando no quiero que se muestre.Si yo fuera la construcción de todo mediante programación, me gustaría añadir el UIImageView como sea necesario.Pero desde que se llevará a cabo en IB, el UIImageView siempre está ahí.Si el defecto se deje el celular solo (imagen de muestra), de lo contrario, quitar UIImageView y mostrar UITableViewCellAccessoryCheckmark?Si que se hace, se que tengo una etiqueta en UIImageView por lo que se puede acceder y se retira?

¿Fue útil?

Solución

Usted puede controlar fácilmente la visibilidad de cualquier control, incluyendo UIImageView.Si a usted le gusta construir cosas en IB, a continuación, una solución es agregar los controles que se necesitan, los exponen como propiedades y, a continuación, ocultar los que no quieren para una celda dada.

E. g.

cell.image.hidden = YES;

Cuando ocultos que no tienen dibujar la cabeza, y a pesar de su celda puede tener miles de filas habrá muy pocas células, por lo que es bastante eficiente solución.Sólo recuerde que las células se vuelven a utilizar si usted llama [formato tableview dequeueReusableCellWithIdentifier] (lo que usted debe hacer) así que tendrás que explícitamente mostrar/ocultar de control cuya visibilidad puede haber cambiado.

Una alternativa es tener células con y sin imágenes y elegir la correcta al agregar datos a la tabla.Para las células que son similares gestionar dos similares-pero-minorly-diferentes activos probablemente sería un dolor de cabeza.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top