Luiz Carlos Querino Filho



Documentos relacionados
2ª EDIÇÃO. André Milani. Novatec

Jonathan Stark Brian Jepson

Aprendendo Programação. ios. Alasdair Allan. Novatec

Criando Aplicações PHP com. Zend e Dojo. Flávio Gomes da Silva Lisboa. Novatec

Desenvolvendo para. Windows 8. Aprenda a desenvolver aplicativos para Windows Phone 8 e Windows 8. Ricardo R. Lecheta. Novatec

Desenvolvendo Websites com PHP

Google Android para Tablets

Aprendendo Cocoa com Objective-C Paris Buttfield-Addison Jonathon Manning

Laboratórios de Tecnologias. Cisco. em Infraestrutura de Redes. Samuel Henrique Bucke Brito. Novatec

Ricardo R. Lecheta. Novatec

Hélio Engholm Jr. Novatec

marketing ágil Utilização de Metodologias Ágeis em Projetos de Marketing Michelle Accardi-Petersen Novatec

Google Android para Tablets

Zend. Framework. Componentes Poderosos para PHP. Flávio Gomes da Silva Lisboa. Novatec

Novatec Editora Ltda. [2014].

Google Analytics Justin Cutroni

MARKETING DIGITAL NA ERA. Martha Gabriel CONCEITOS, PLATAFORMAS E ESTRATÉGIAS. Novatec

Ademir C. Gabardo. Novatec

Criando Relatórios com PHP

David Hows Peter Membrey Eelco Plugge

Paulo Strelczuk. Novatec

Desenvolvendo Websites com PHP

Lojas Virtuais com. Magento. André Nobrega Gugliotti. Novatec

Desenvolvimento de Grandes Aplicações Web

Service Desk Corporativo

Adail Henrique Spínola Horst Aécio dos Santos Pires André Luis Boni Déo. Novatec

Wilson Moraes Góes. Novatec

Brandon Rhodes John Goerzen

Scrum em Ação. Gerenciamento e Desenvolvimento Ágil de Projetos de Software. Andrew Pham Phuong-Van Pham. Novatec

Ricardo Kléber M. Galvão. Novatec

Programação Java. em Ambiente Distribuído. Ênfase no Mapeamento Objeto-Relacional com JPA, EJB e Hibernate. Douglas Rocha Mendes.

PDF Explicado John Whitington

Crie Seu Próprio Site

Wilson Moraes Góes. Novatec

Criando Aplicações Gráficas com PHP

Desenvolvendo para iphone e ipad

Nelson Glauber de Vasconcelos Leal

Ricardo R. Lecheta. Novatec

como acabar com sua em apenas 140 caracteres Carolina Lima Novatec

Murillo Lo Visco. Novatec

Harrison Kinsley Will McGugan

Google Android para Tablets

Programando para. iphone e ipad. Aprenda a construir aplicativos para o ios. André Milani. Novatec

2ª Edição Alexandre Keller

Aprendendo. Unix no OS X. Mountain Lion. Mergulhando no Terminal e no Shell. Dave Taylor. Novatec

João Eriberto Mota Filho

Desenvolvendo para iphone e ipad

UML 2 uma abordagem prática Gilleanes T. A. Guedes

Gerenciamento. de projetos. Bart Gerardi. Novatec. Como evitar problemas previsíveis para o sucesso do projeto

Camila Porto. Novatec

Copyright 2008, 2013 da Novatec Editora Ltda.

JQuery. A Biblioteca do Programador JavaScript. 3ª Edição Revisada e ampliada. Maurício Samy Silva. Novatec

Pramod J. Sadalage Martin Fowler

Novatec Editora Ltda

Desenvolvendo para iphone e ipad

Conrado Adolpho. Novatec

Keith Wood. Apresentação de Dave Methvin. Novatec

Laboratórios de Tecnologias. Cisco. em Infraestrutura de Redes. 2a Edição. Samuel Henrique Bucke Brito. Novatec

Editor: Rubens Prates Revisão gramatical: Patrizia Zagni Capa: Victor Bittow Editoração eletrônica: Camila Kuwabata e Carolina Kuwabata

Ricardo Lino Olonca. Novatec

Desenvolvimento móvel para IOS - Apple Carga Horária Por Módulo: 16 Horas.

Padrões de Projeto em PHP

Josh Pauli Revisão técnica Scott White. Novatec

Primeiros Passos com o Raspberry Pi

Guia do Programador Joel Saade

André Gugliotti. Novatec

Adrian Mejia. Novatec

Excel Avançado. 2ª Edição. Antonio Fernando Cinto Wilson Moraes Góes. Novatec

Rails 3 Básico Cloves Carneiro Jr. Rida Al Barazi

Adail Henrique Spínola Horst Aécio dos Santos Pires André Luis Boni Déo. Novatec

Design Centrado no Usuário

Desenvolvendo para. Windows 8. Aprenda a desenvolver aplicativos para Windows Phone 8 e Windows 8. Ricardo R. Lecheta. Novatec

Julia Elman e Mark Lavin. Novatec

Marcos Bandeira de Oliveira. Novatec

João Eriberto Mota Filho

Ricardo Lino Olonca. Novatec

Manual do Usuário Nextel Cloud. Manual do Usuário. Versão Copyright Nextel

Manual TIM PROTECT BACKUP. Manual do Usuário. Versão Copyright TIM PROTECT BACKUP

Segurança em Redes sem Fio

TDC desenvolvimento. para iphone. Helder da Rocha

Mineração de dados da web social Matthew A. Russell

A Arte de SEO. Eric Enge, Stephan Spencer, Jessie Stricchiola e Rand Fishkin Introdução de John Battelle. Novatec

Manual Vivo Sync. Manual do Usuário. Versão Copyright Vivo

Manual Vivo Sync. Manual do Usuário. Versão Copyright Vivo

RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA (PIBIC/CNPq/INPE)

Como configurar s nos celulares. Ebook. Como configurar s no seu celular. W3alpha - Desenvolvimento e hospedagem na internet

Fundamentos da Computação Móvel

Tagarela: Aplicativo para Comunicação Alternativa no ios

Sumário. 1 Explorando o Windows Gerenciando contas de usuário Parte 1 Conhecendo o Windows 7

Edgar Gomes de Abreu

PÓS GRADUAÇÃO LATO SENSU. Desenvolvimento de Aplicações Em Dispositivos Móveis Com Android, Java, IOs (Iphone).

DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID

Defenda sua base com circuitos simples, Arduino e Raspberry Pi

Perguntas frequentes do Xerox Mobile Link ios

Objective-C Fundamental Christopher K. Fairbairn Johannes Fahrenkrug Collin Ruffenach

Luiz Carlos Querino Filho

Transcrição:

criando aplicativos para iphone e Uma Abordagem Prática Do nível Básico ao Avançado ipad Luiz Carlos Querino Filho Novatec

Copyright 2013 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo, sem prévia autorização, por escrito, do autor e da Editora. Editor: Rubens Prates Revisão gramatical: Marta Almeida de Sá Editoração eletrônica: Carolina Kuwabata Capa: Isabela Berger ISBN: 978-85-7522-317-8 Histórico de impressões: Março/2013 Primeira edição Novatec Editora Ltda. Rua Luís Antônio dos Santos 110 02460-000 São Paulo, SP Brasil Tel.: +55 11 2959-6529 Fax: +55 11 2950-8869 E-mail: novatec@novatec.com.br Site: www.novatec.com.br Twitter: twitter.com/novateceditora Facebook: facebook.com/novatec LinkedIn: linkedin.com/in/novatec Dados Internacionais de Catalogação na Publicação (CIP) (Câmara Brasileira do Livro, SP, Brasil) Querino Filho, Luiz Carlos Criando aplicativos para iphone e ipad : uma abordagem prática do nível básico ao avançado / Luiz Carlos Querino Filho. -- São Paulo : Novatec Editora, 2013. Bibliografia. ISBN 978-85-7522-317-8 1. Aplicação de programas - Desenvolvimento 2. Computação móvel 3. ios (Plataforma) 4. ipad 5. iphone 6. Sistemas operacionais (Computador) I. Título. 13-02590 CDD-005.26 Índices para catálogo sistemático: 1. Sistema operacional ios : Plataforma de desenvolvimento de aplicativos para dispositivos móveis da Apple : Programa de computador 005.26 VC20130313

Sumário Capítulo 1 Introdução ao ios: o coração do iphone e do ipad... 14 1.1 iphone: a Apple inicia mais uma revolução no mercado... 15 1.2 Lançamento do iphone SDK... 17 1.3 ipad: muito mais que um iphone de tela grande... 19 1.4 ios como uma plataforma de desenvolvimento...20 1.5 25 bilhões de apps baixados e esse número está aumentando... 21 Capítulo 2 Preparando o ambiente de desenvolvimento... 24 2.1 Requisitos para desenvolver para iphone e ipad... 24 2.2 Obtendo e instalando o Xcode...25 2.3 Inscrevendo-se no ios Developer Program (opcional)...27 2.4 Um conversor de moeda, só pra começar...34 Capítulo 3 Linguagem C: o alicerce da programação para ios... 70 3.1 Um programa C no Mac... 71 3.2 Variáveis, tipos básicos, vetores e structs...79 3.3 Estruturas de repetição...82 3.4 Estruturas de controle de fluxo e decisão...84 3.5 Funções...86 3.6 Ponteiros...88 3.7 O que muda daqui para a frente...90 Capítulo 4 Programação Orientada a Objetos um novo modelo de desenvolvimento... 92 4.1 Programação Orientada a Objetos x Programação Estruturada...93 4.2 Classes e objetos, métodos e atributos...95 4.3 Encapsulamento...97 4.4 Herança...99 4.5 Protocolos... 100 7

8 Criando aplicativos para iphone e ipad Capítulo 5 A linguagem Objective-C: orientação a objetos na prática... 101 5.1 Criando um programa básico em Objective-C... 102 5.2 Utilizando objetos e passando mensagens... 106 5.3 Criando uma nova classe... 114 5.4 Definindo variáveis de instância e métodos de acesso...118 5.5 Criando um inicializador... 125 5.6 Coleções de objetos... 129 5.7 Propriedades e gerenciamento de memória...133 5.8 Resumo de classes essenciais do framework Cocoa Touch...139 Capítulo 6 Uma aplicação básica para o iphone... 153 6.1 Frameworks e padrões de projeto essenciais... 153 6.3 Revisando a estrutura básica de um projeto iphone e aprimorando o aplicativo... 182 6.4 Executando o aplicativo no aparelho físico... 187 6.5 Usando o debugger para encontrar erros... 190 6.6 Enviando seu aplicativo para a App Store... 193 Capítulo 7 Enriquecendo a interface com o UIKit... 198 7.1 UIView: a base de todos os objetos visuais... 198 7.2 Criando o projeto IMCRapido e o seu modelo... 199 7.3 UISlider...201 7.4 UIDatePicker... 208 7.5 UISwitch...210 7.6 Alertas...214 Capítulo 8 Reconhecimento de gestos, animação e desenho... 217 8.1 Criando o projeto Desenhando e sua interface...218 8.2 Adicionando as figuras à tela... 225 8.3 UIGestureRecognizer... 228 8.4 Eliminando (e animando) as coisas... 240 8.5 Desenhando com o toque do dedo usando Quartz... 243 Capítulo 9 Criando uma aplicação com múltiplas telas e com suporte ao ipad... 250 9.1 Um controlador para cada tela... 250 9.2 Abrindo mais telas... 253

Sumário 9 9.3 Passando valores entre telas da maneira correta usando delegação... 258 9.4 Outros tipos de controladores de tela... 263 9.5 Dando suporte ao ipad no seu aplicativo... 279 Capítulo 10 Informações em tabelas com UITableView... 283 10.1 Criando o projeto ListaDeCompras e adicionando um UITableViewController..284 10.2 Criando a classe modelo... 289 10.3 Implementando o controlador com UITableViewController... 292 10.4 Incluindo e excluindo produtos na lista... 297 Capítulo 11 Armazenamento de dados com Core Data... 305 11.1 Core Data mapeamento objeto-relacional... 305 11.2 Criando o modelo de objetos... 307 11.3 Adicionando o framework Core Data ao projeto...310 11.4 A classe LDCProduto como subclasse de NSManagedObject...312 11.5 Adaptando a classe do modelo para usar Core Data...314 11.6 Usando CoreData com UITableView e adaptando a inclusão...321 Capítulo 12 Onde estou? Para onde vou? GPS com Core Location e MapView... 325 12.1 Criando o projeto Caminhada com Core Location e MapKit... 326 12.2 Classes para obtenção da localização: CLLocation e CLLocationManager... 330 12.3 Visualizando mapas com MKMapView... 334 12.4 Testando no emulador... 338 Capítulo 13 Acelerômetro, giroscópio e bússola: detectando o movimento... 339 13.1 Diferenças entre o acelerômetro, o giroscópio e a bússola... 340 13.2 O framework Core Motion...341 13.3 Usando o acelerômetro com a classe CMAccelerometerData... 343 13.4 Funcionamento básico do giroscópio usando a classe CMGyroData... 353 13.5 Obtendo a direção da bússola em graus com CLLocationManager... 355 Capítulo 14 icloud: o seu aplicativo na nuvem... 357 14.1 O que o icloud pode fazer para o seu aplicativo... 358 14.2 Criando um projeto para a nuvem...360 14.3 Definindo um container icloud para seu aplicativo... 365 14.4 Armazenando e recuperando documentos na nuvem...366

10 Criando aplicativos para iphone e ipad Capítulo 15 Áudio e multimídia... 375 15.1 Reproduzindo arquivos de áudio em um aplicativo... 376 15.2 Gravando arquivos de áudio...381 15.3 Acesso à câmera e à biblioteca de fotos...386 Capítulo 16 Usando OpenGL e GLKit... 389 16.1 OpenGL x GLKit: qual utilizar? Conceitos básicos de OpenGL... 390 16.2 GLKit: criando um novo projeto e uma classe para Sprites... 392 16.3 Implementando a lógica do jogo PegandoLaranja...400 Capítulo 17 Acesso a Web Services e APIs de redes sociais... 409 17.1 Entendendo melhor os Web Services...409 17.2 Acessando serviços e recebendo dados em formato JSON... 411 17.3 Utilizando a API do Twitter: acesso a uma linha do tempo (timeline)...413 17.4 Publicando no Facebook e no Twitter com o framework Social...419 Capítulo 18 Internacionalização: o seu aplicativo globalizado... 424 18.1 Preparando um projeto para ser internacionalizado... 425 18.2 Criando telas em diferentes línguas... 429 18.3 Preparando as strings do código para tradução automática... 429 Capítulo 19 Integrando anúncios ao aplicativo... 436 19.1 Considerações sobre o uso de anúncios... 436 19.2 Incluindo anúncios Google AdMob no seu projeto... 437 19.3 Utilizando anúncios iad da Apple... 450 Capítulo 20 Resumo das novidades do ios 6... 453 20.1 Resumo das principais novidades do ios 6... 453 20.2 Preparando seu app para suportar a nova tela do iphone 5... 455 Referências bibliográficas... 461 Índice remissivo... 463