3. Antes de comenzar….
• Que es lo quiero y que me gustaria desarrollar
• Cual es mi target
• Diseño
• Experiencia
4. Que requiero para desarrollar en
iOS?
• Un Mac!
• Inscribirse como developers en
apple.developer.com.
• Descargar el Xcode “SDK” para desarrollar en
iOS, en Lion atraves del MacStore.
• Buscar comunidades de soporte online – leer la
documentación – Tener equipos de Test.
5. Que requiero para desarrollar en
iOS?
• iOS es la plataforma, pero el lenguaje de
desarrollo es Objetive-c.
• Según wikipedia…Es un lenguaje de
programación orientado a objetos creado como
un superconjunto de C.
6. Las herramientas para desarrollar
• Xcode es el SDK de Apple para el desarrollo de
apps tanto para Mac como para iOS.
• Actualmente se encuentra en la versión 4.2, con
soporte para iOS 5.0.
• Dependiendo las caracteristicas que se quieran
utilizar en el app y soporte para devices se debe
seleccionar la versión de Xcode.
7. Xcode - Versiones
• Versiones recomendadas.
• 4.2 -> Mac`s Intel, incluye soporte para iOS 5.0,
Lion 10.7 OS, internamente incluye
internamente las herramientas de analisis y
depuración.
• 3.2.5 -> Mac’s Intel, Incluye soporte para iOS
3.1.3, Snow Leopard, herramientas de analisis y
depuración independientes.
8. Conjunto de Herramientas
• Xcode = Ambiente de desarrollo.
• Interface Builder = Construcción visual de
vistas y objetos.
• Instruments = Analisis de
memoria, objetos, performance, etc.
• DashCode = Utilitario.
9. Xcode – SDK ambiente
Objetos de proyecto
Herramientas
Clases
Panel de código
14. Mi primer app
• Una idea.
• Planifiquen en papel el diseño base y la
navegación del app.
• Revisen apps que puedan ser
similares
• Cuidado con los UI Guidelines!
15. Mi primer app
• Abrir Xcode.
• Clic en File / New Proyect y seleccionamos el
tipo de proyecto.
17. Mi primer app
• Contenido del proyecto:
• AppDelegate -> Archivo de inicio del app.
• Archivos .h -> Headers de clases
• Archivos .m -> Implementaciones de clases
• Archivos .XIB -> Archuvos de UI
• Archivo .plist -> Archivos de configuración
27. Variables y objetos comunes
• Alloc – init - Release:
• Alloc = Es la solicitud de reserva de memoria
del objeto.
• Init = Es la solcitud de inicializar el objeto.
• Release = Es la solicitud de liberación de
memoria
31. Los UIViewController’s y Clases
• Un UiViewController es unas clase que importa el
framework UIKit en el header y hereda de la
clase UiViewController, en la mayoria de los casos
tiene un archivo .xib relacionado, normalmente
son tres archivos .h, .m y .xib.
• Una clase en un conjunto de archivos, .h y .m
que importa el framework Foundation en el
header y hereda de la clase NSObject.
32. UIViewController’s
• Para agregar un UIViewController al proyecto:
File / New File / UIViewController Subclass
“marcar Whit .XIB file / Next / Colocar nombre /
Finish.
34. Los UIViewController’s
• Navegando entre controladores, hacia adelante:
En la implementación importar el controlador…
Import “Controlador2 .h”
Controlador2 *nextController = [[Controlador2 alloc]
initWithNibName:@"Controlador2 " bundle:nil];
nextController.hidesBottomBarWhenPushed=YES;
[self.navigationController pushViewController:nextController
animated:YES];
[nextController metodo:@”parametro”];
[nextController release];
35. Los UIViewController’s
• Navegando entre controladores, hacia atras:
Usando el navigation.
UIBarButtonItem *temporaryBarButtonItem = [[UIBarButtonItem alloc]
init];
temporaryBarButtonItem.title = @"Volver";
self.navigationItem.backBarButtonItem = temporaryBarButtonItem;
[temporaryBarButtonItem release];
Acción custom.
- (void)volver:(id)sender{
[self.navigationController popViewControllerAnimated:YES];
}
36. Clases
• Metodos – IBAction:
• Todos los metodos son funciones que permiten
recibir N parametros pero retornar un solo
objeto.
.h
-(int)mimetodo: (nsstring *)texto;
.m
-(int)mimetodo: (nsstring *)texto{}
37. Los UIViewController’s
• Metodos – IBAction:
• Los IBAction son metodos que normalmente se
releacionan a objetos del interface “Botones”
.h
-(IBaction)mimetodo;
.m
-(IBaction)mimetodo{}
38. Clases
• Metodos – IBAction:
• Para invocar un metodo dentro de una clase se
utiliza la instrucción self, ejemplo.
[self mimetodo];
[self mimetodo:@”parametro”];
39. Los UIViewController’s
• Metodos de vista:
• -(void)viewDidLoad{}
• - (void)viewWillAppear:(BOOL)animated{}
• -(void)viewDidUnload{}
• -(void)dealloc {}
42. UITableViewControllers
• Es uno de los objetos mas usandos en iOS para
mostrar información al usuario de forma de lista.
• Algunos objetos como el UITableViewController
usan el delegate para recibir y enviar mensajes
entre sus metodos.
• Las celdas estandar permiten el uso de un titulo,
detalle, imagen y boton “disclousure”.
43. UITableViewControllers
• Es uno de los objetos mas usandos en iOS para
mostrar información al usuario de forma de lista.
• Algunos objetos como el UITableViewController
usan el delegate para recibir y enviar mensajes
entre sus metodos.
• Las celdas estandar permiten el uso de un titulo,
detalle, imagen y boton “disclousure”.
45. UITableViewControllers
• Se puede crear celdas personalizadas para
aumentar la cantidad de informacion y mejorar el
diseño en las celdas, creando una clase tipo
UITableViewCell y luego relacionandola a la celda
en su fase construcción.
• Se debe relacionar, el delegate y datasource para
que asi pueda recibir los datos.
• Solo se puede colocar uno por vista.
50. Vistas Modales y Push
• Modal y push son dos formas diferentes de
presentación de los UIViewControllers.
• En el caso de push se mantiene la navegación y
se respetan los elementos de acceso a otras
vistas como los TabBar.
• En el caso de los Modal, se hace una
presentación full screen de la vista.