¿Por qué iboutlet es débil?

¿Por qué iboutlet es débil?
¿Por qué iboutlet es débil?
Anonim

@IBOutlet hace que Interface Builder reconozca la salida. private asegura que no se acceda a la salida fuera de la clase actual. débil se usa porque en la mayoría de las situaciones, el propietario del punto de venta no es el mismo que el propietario de la vista. Por ejemplo, un controlador de vista no posee someLabel - la vista del controlador de vista sí.

¿Es necesario que los IBOutlets sean débiles?

La respuesta oficial de Apple es que IBOutlets debería ser fuerte. El único caso en el que un IBOutlet debe ser débil es para evitar un ciclo de retención. Un ciclo de referencia sólido puede provocar pérdidas de memoria y bloqueos de aplicaciones.

¿Qué es IBOutlet Swift?

El calificador de tipo IBOutlet es una etiqueta aplicada a una declaración de propiedad para que la aplicación Interface Builder pueda reconocer la propiedad como una salida y sincronizar su visualización y conexión con Xcode. Una salida se declara como referencia débil (débil) para evitar ciclos de referencia fuertes.

¿Qué es una referencia débil en Swift?

Referencias débiles. Una referencia débil es una referencia que no mantiene un control fuerte sobre la instancia a la que se refiere y, por lo tanto, no impide que ARC se deshaga de la instancia a la que se hace referencia. Este comportamiento evita que la referencia se convierta en parte de un ciclo de referencia fuerte.

¿Cuál es la diferencia entre débil y fuerte en Swift?

Una referencia strong significa que desea "poseer" el objeto al que hace referencia con esta propiedad/variable. En cambio, con una débilreferencia significa que no desea tener control sobre la vida útil del objeto.

Recomendado: