Detrás del excitante mundo del desarrollo de aplicaciones para iOS, se encuentra la importancia que han adquirido las 'apps' como negocio. ¿Le gustaría empezar a trabajar en el desarrollo de aplicaciones? ¿Tiene falta de experiencia como programador? Si ha contestado afirmativamente a estas dos preguntas, el libro que tiene entre sus manos le será de una gran ayuda para conseguir los objetivos que se proponga en este terreno. Con este manual práctico será capaz de programar para los dispositivos de moda con éxito. Aquí iniciará un interesante viaje por el desarrollo de aplicaciones sobre iOS, tanto para el iPhone como para el iPad. Gracias a sus 40 capítulos, cada uno con un tema nuevo, incrementará el nivel de conocimientos y profundizará en todos los secretos de los auténticos desarrolladores. En la página Web de Anaya Multimedia encontrará material complementario.ÍndiceIntroducción A quién va dirigido este libro Contenido del libro La estructura del libro Convenciones Código fuente 1. Hola iOS Bases del desarrollo para iOS Un Mac adecuado Un dispositivo para hacer pruebas Diferencias entre los dispositivos iPhone 3GS iPhone 4 iPhone 4S iPad iPad 2 iPad 3ª generación Una cuenta para desarrolladores de iOS Estándar Empresa El SDK oficial para iOS Descargar e instalar El proceso típico de desarrollo de una aplicación Escribir una especificación Esquema y diseño Programación Pruebas Icono de la pantalla principal Imagen de inicio de la aplicación Ejercicio 2. El Simulador iOS Propiedades de Simulador iOS Instalar y desinstalar aplicaciones Limitaciones del Simulador iOS 3. Un tour por Xcode La pantalla de bienvenida Seleccionar una plantilla para el proyecto Definir las opciones del proyecto Un repaso al IDE de Xcode El área de navegación El área del editor El área de utilidades El área de la librería Área del depurador Barra de herramientas 4. Las bases de las aplicaciones iOS Estados de la aplicación Ventanas, vistas y controladores de vistas Frameworks La clase UIButton La clase UILabel Crear los elementos de la interfaz del usuario Crear outlet Crear actions Agregar interactividad 5. Introducción a los storyboard Ejercicio Requisitos Pistas Paso a paso 6. Gestionar las entradas del usuario Campos de texto Vistas de texto Ejercicio Requisitos Pistas Paso a paso 7. Comunicarse con los usuarios Avisos Listas de botones Ejercicio 8. Añadir imágenes a nuestra vista La clase UIImage La clase UIImageView Ejercicio 9. Selectores Arrays en Objective-C Ejercicio 10. Selectores de fechas Fechas en Objective-C Ejercicio 11. Selectores personalizados Ejercicio Requisitos Pistas Paso a paso 12. Controles de navegación La interfaz del controlador de navegación Barra de navegación Vista de navegación Barra de herramientas para la navegación Jerarquía del controlador de navegación Gestión de la pila de navegación Aplicaciones basadas en xib Aplicaciones basadas en el storyboard 13. Tablas Flujo de trabajo de una tabla Mostrar valores Selección de la fila Aplicaciones basadas en nib Storyboard Estilos de la vista de tabla Métodos delegados Métodos de origen de datos Novedad para iOS 5 Complementos a la vista de tabla Constantes Complementos del storyboard 14. Tablas estáticas Tipos de tablas Estáticas Prototipo dinámico Diseño de una tabla Consideraciones de pantalla 15. Barras de botones y de herramientas Barras de botones Características del aspecto Directrices de uso Barras de herramientas Características del aspecto Directrices de uso Cambios basados en XIB de Xcode 4.2 16. Crear aplicaciones basadas en páginas La clase PageViewController Creación de instancias Las propiedades delegate y dataSource Preparar la página inicial La plantilla Page-Based Application Ejercicio 17. Utilizar la programación para crear elementos de la interfaz del usuario UIButton UILabel UIImageView Ejercicio 18. Crear vistas con contenido desplazable La clase UIScrollView Vistas desplazables y campos de texto Ejercicio 19. Mensajes emergentes y vistas modales Mensajes emergentes Directrices de uso Cómo presentar el mensaje emergente Cómo rechazar el mensaje emergente Vistas modales Directrices de uso Estilos de presentación Estilos de transición Cómo presentar la vista modal Cómo rechazar una vista modal 20. Publicar mensajes con Twitter Una hoja para los tweets Ejercicio 21. Gestión básica de archivos El sistema de archivos de IOS Presentación de la clase NSFileManager Serialización de objetos 22. Listas de propiedades Tipos de listas de propiedades Crear listas de propiedades Desde el código Editor de la lista de propiedades 23. Configuración de la aplicación Añadir un conjunto de parámetros Utilizar código para leer las preferencias Ejercicio 24. Soporte para compartir archivos con iTunes Ejercicio Requisitos Pistas Paso a paso 25. Presentación de iCloud Storage Conceptos básicos Cómo trabajar con las API de iCloud Storage Crear un App ID con iCloud Crear un perfil de aprovisionamiento apropiado Activar los derechos adecuados a nuestro proyecto Xcode Comprobar la disponibilidad del servicio Emplear el almacenamiento de documentos de iCloud Crear un nuevo documento para iCloud Abrir un documento existente Guardar un documento Buscar documentos en iCloud 26. Introducción a Core Data Conceptos básicos Objeto gestionado Contexto de un objeto gestionado Coordinador de almacenamiento persistente Modelo de objetos gestionados Iniciar objetos Core Data Escribir objetos gestionados Leer objetos gestionados Ejercicio 27. Analizar XML con NSXMLParser Fundamentos de XML Elementos y etiquetas Atributos Caracteres especiales Comentarios e instrucciones de proceso La clase NSXMLParser Analizadores SAX y DOM El protocolo NSXMLParserDelegate Cómo se analiza un archivo XML Cargar el documento XML en un objeto NSData Iniciar un objeto NSXMLParser Iniciar un objeto delegado Iniciar el proceso de análisis Los métodos delegados de XMLParser 28. Trabajar con los servicios Web SOAP Ejercicio Requisitos Pistas Paso a paso 29. Movimientos táctiles y gestuales Eventos táctiles Fases táctiles Contador de contactos Eventos gestuales Administración de gestos Fases del reconocedor gestual 30. Impresión Preparar el contenido para la impresión UIPrintInfo UIPrintPaper UIPrintInteractionController 31. Animación básica con temporizadores Crear animaciones empleando subclases de UIView Ejercicio 32. Introducción a Core Image Imágenes y filtros Cómo usar Core Image Ejercicio 33. Construir aplicaciones universales La plantilla para aplicaciones universales Ejercicio 34. ¿Dónde estoy? Introducción a Core Location Trabajar con la actualización de la ubicación Gestionar errores y comprobar la disponibilidad del hardware Geocodificación y geocodificación inversa Obtener la orientación de la brújula Ejercicio 35. Introducción a Map Kit Añadir anotaciones Ejercicio 36. Utilizar la cámara y la librería de fotos Ejercicio Requisitos Pistas Paso a paso 37. Introducción a Core Motion Acelerómetros y giroscopios Fundamentos básicos de Core Motion Comprobar la disponibilidad del hardware Gestionar los eventos del acelerómetro Gestionar los eventos del giroscopio Ejercicio 38. Construir aplicaciones que funcionan en segundo plano Comprender la suspensión en segundo plano Ejecutar código desde el segundo plano Crear notificaciones locales Ejercicio Apéndice A. Introducción a la programación con Objective-C Conceptos básicos de programación Escribir el programa Compilar Enlazar para crear un ejecutable Probar y depurar Cómo encaja Xcode en este esquema Variables, declaraciones y expresiones Variables Declaraciones Expresiones y operadores Tomar decisiones y realizar tareas repetitivas Las declaraciones if e if ... else La cláusula else La declaración for La declaración while La declaración do...while Las declaraciones break y continue Introducción a la programación orientada a objetos (OOP) La necesidad de la programación orientada a objetos Conceptos clave de la programación orientada a objetos Clases y objetos Herencia Composición Encapsulación Polimorfismo Protocolos Crear una clase Objective-C La directriz #import Las claves @interface y @end Variables y métodos de instancia Métodos con varios parámetros Implementar la clase Enviar mensajes a objetos Iniciar objetos Propiedades de Objective-C Apéndice B. Introducción a ARC El propietario de objeto Convertir proyectos a ARC Apéndice C. Hacer pruebas en un dispositivo iOS Obtener y registrar identificadores UDID Crear un APP ID (Identificador Bundle) Crear un certificado de desarrollo Crear un perfil de aprovisionamiento Configurar el proyecto Apéndice D. Distribución Ad Hoc Obtener y registrar identificadores UDID Crear un APP ID (Identificador Bundle) Crear un certificado de distribución Crear un perfil de aprovisionamiento Configurar el proyecto para la distribución Apéndice E. Distribución en App Store Crear un perfil para la aplicación Preparar y cargar el archivo binario de la aplicación Crear un perfil de aprovisionamiento para distribuir en App Store Configurar el proyecto para la distribución por App Store Índice alfabético