Outlet y Action son formas (o conexión/intermediario) mediante las cuales un ViewController interactuará con su Vista. Aunque ambos pueden parecer similares durante los primeros días de conocimiento de iOS pero tienen un propósito diferente:
Salida: ViewController talks to View by using Outlet
. Cualquier objeto (UILabel, UIButton, UIImage, UIView, etc.) en View puede tener una conexión de salida a ViewController. Outlet se usa como @property
en ViewController, lo que significa que:
- puede establecer algo (como Actualizar texto de UILabel, Establecer imagen de fondo de un UIView, etc.) de un objeto utilizando la salida.
- se puede obtener algo de un objeto (como valor actual de UIStepper, tamaño de fuente actual de un NSAttributedString etc.)
Acción: View pass on messages about view to ViewController by using Action
(o, en términos técnicos ViewController fijado como Target
para cualquier Action
en Vista) La acción es Method
en ViewController (a diferencia de Outlet que es @property
en ViewController). Cada vez que algo (cualquier Event
) le sucede a un objeto (como el botón UI se toca), Acción transfiere el mensaje a ViewController. La acción (o método de acción) puede hacer algo después de recibir el mensaje.
Nota: La acción solo se puede establecer mediante el objeto secundario de UIControl; significa que no se puede establecer Acción para UILabel, etc. UIView
Donde \ Cuándo utilizar Outlet o Acción:
Durante los días iniciales de iOS conocido su perfectamente normal a confundirse entre la acción y la salida y sus usos. Hay pocas cosas pequeñas (como obtener texto/título de un botón) que se pueden hacer tanto por Outlet como por Acción, pero de lo contrario son muy diferentes. Tenga en cuenta los puntos anteriores al usar uno u otro.
presenta una toma de datos de su ViewController por ejemplo si se establece un texto de la etiqueta. Se informa una acción desde View to you Controller. Por ejemplo, si haces clic en un botón. (Evento TouchUpInside) – lukaskrieger