Ios.s5

574 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
574
On SlideShare
0
From Embeds
0
Number of Embeds
96
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Ios.s5

    1. 1. 5 - CONTROLADORES YLIFECYCLE DE LA APLICACIÓNCurso de desarrollo de aplicaciones móviles para iPhone y iPad endika.gutierrez@urbegi.com alex.rayon@urbegi.com Urbegi Learning Contents
    2. 2. CONTENIDO• Lifecycle de la aplicación• Controladores• Interface Builder y controladores
    3. 3. CONTENIDO • Lifecycle de la aplicación• Controladores• Interface Builder y controladores
    4. 4. LIFECYCLE DE LA APLICACIÓN• Todas las aplicaciones siguen un guión de ejecución • Comprende todos los eventos surgidos desde que el usuario lanza la aplicación hasta que la aplicación finalmente muere
    5. 5. LIFECYCLE DE LA APLICACIÓN 2• En las aplicaciones más sencillas de C, toda la vida de la aplicación transcurre en el método main()• En Java ocurre de manera similar• Objective-C parte de la base de C y amplia la lógica • Recordemos que Objective-C es una extensión de C
    6. 6. LIFECYCLE DE LA APLICACIÓN 3• Portanto la aplicación parte del método main(). Veamos la apariencia que tieneint main(int argc, char *argv[]){ @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegateclass])); }}• Unicamente llama a UIAplicatiónMain que será el encargado que gestionar todo el ciclo de la aplicación
    7. 7. LIFECYCLE DE LA APLICACIÓN 4•A este método UIAplicationMain se le proporciona una clase que debe implementar el protocolo UIApplicationDelegate que recibirá todos los eventos de la aplicación• Este protocolo comprende todos los posibles eventos externos a la aplicación que puedan surgir y afecten al ciclo de vida de la misma• Ver la referencia online
    8. 8. LIFECYCLE DE LA APLICACIÓN 5• Loseventos más importantes quedan representados en este gráfico: ApplicationDelegate El usuario lanza la aplicación application: main() didFinishLaunching WithOptions: UIApplicationMain() Ciclo de la Recepción de aplicación eventos App deja de estar applicationWill activa ResignActive La App se mueve al applicationDid background EnterBackground
    9. 9. CONTENIDO• Lifecycle de la aplicación • Controladores• Interface Builder y controladores
    10. 10. CONTROLADORES• El controlador es el elemento que gestiona la lógica de la aplicación• Suele ser de las clases más “pesadas” dentro del paradigma MVC• Es el elemento central que debe coordinar Vistas y modelo
    11. 11. CONTROLADORES 2• Son los encargados de crear y gestionar la jerarquía de vistas• Los controladores heredan de la clase UIViewController• Desde esta clase gestionan el ciclo de vida de las vistas
    12. 12. CONTROLADORES 3• Los principales métodos para la gestión del ciclo de vida de la vista son: • − (void)viewDidLoad La vista acaba de ser cargada. • − (void)viewWillAppear:(BOOL)animated La vista va a aparecer. • − (void)viewDidAppear:(BOOL)animated La vista acaba de aparecer. • − (void)viewWillDisappear:(BOOL)animated La vista va a desaparecer. • − (void)viewDidDisappear:(BOOL)animated La vista ha desaparecido. • − (void)viewWillUnload Se va a liberar la vista. • − (void)viewDidUnload La vista se ha liberado
    13. 13. CONTROLADORES 4• Desde estos métodos se realizan las operaciones previas a la carga de las vistas • Generalmente en los métodos • − (void)viewDidLoad • − (void)viewDidUnload
    14. 14. CONTENIDO• Lifecycle de la aplicación• Controladores • Interface Builder y controladores
    15. 15. INTERFACE BUILDER• Interface Builder es la herramienta proporcionada por Apple para el desarrollo de interfaces• Viene incluida en Xcode
    16. 16. INTERFACE BUILDER 2• Se comunica con los controladores mediante dos “palabras clave”, IBOutlet e IBAction • Un IBOutletson propiedades que referencian a un elemento visual desde el controlador. Ej: Etiquetas • Un son métodos que un evento lanza desde un IBAction elemento de la interfaz. EJ: Botones
    17. 17. INTERFACE BUILDER 3• La definición de un Outlet quedaría así:• @property (nonatomic, weak)IBOutlet UILabel * etiqueta;
    18. 18. INTERFACE BUILDER 4• La definición de una Action quedaría así:• -(IBAction)botonPulsado:(id)sender;• Recibe un parametro que es ele elemento que ha lanzado el evento
    19. 19. FIN

    ×