Pregunta

Estoy usando una vista de tabla de "celdas estáticas" creada en mi archivo de guiones gráficos. Sin embargo, me gustaría actualizar el texto en una de estas celdas cuando se cambia una configuración.

Estoy presionando un controlador de vista que actualiza la configuración. Estoy tratando de usar una devolución de llamada para cambiar el texto de la celda cuando aparece de la pila, pero en ese momento la celda aparentemente se ha reciclado o reutilizado, por lo que el objeto antiguo está fuera de la pantalla y ya no se usa en la vista de la tabla.

¿Hay alguna manera de actualizar este texto y hacerlo permanente (de modo que cuando la celda se desplaza fuera de la pantalla y regrese, aún aparece el nuevo valor)?

¿Fue útil?

Solución

Suponiendo que la jerarquía de la vista de su tabla esté en la línea de:

Table View (static cells)
 - Table View Section
  - Table View Cell
    - UILabel (with the text property you want to modify)
  1. Declarar un iBoutlet UILabel en su código, y cíquelo en el guión gráfico UILabel En la jerarquía de la vista de la tabla arriba.
  2. En su método de devolución de llamada, configure su UILabelPropiedad de texto como mejor le parezca.

Otros consejos

Puede almacenar el texto que desea cambiar como propiedad y usarlo en:

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = super.tableView(tableView, cellForRowAtIndexPath: indexPath)

    switch (indexPath.section, indexPath.row) {
    case (0, 3):
        cell.textLabel?.text = yourProperty

    default: break
    }

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