Programação para Android. Aula 06: Activity, menus e action bar



Documentos relacionados
Android: Ciclo de vida da Activity

Prof. Jhonatan Fernando

Interfaces Gráficas parte 3

Programação para Android. Aula 08: Persistência de dados SQL

INTRODUÇÃO À PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS. ADS 6º Período

Programação para Dispositivos Móveis

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Programação para Android. Aula 10: Acesso a câmera, sms e recursos do aparelho

Programação para Dispositivos Móveis. Activities

Desenvolvimento com Android Studio. Aula 02 Widgets, Manipulação de Dados e Programação de Eventos

Desenvolvimento Android.

Módulo 2 - Novas Activities Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ

Programa de Dispositivos Móveis

Programação para Dispositivos Móveis

COMO INSTALAR O CATÁLOGO

Desenvolvimento para Android Prá9ca 2. Prof. Markus Endler

Definições de Projeto

Programação para Android. Aula 05: Estilos e temas; galeria de imagens

API's e Aplicações para Android

ANDROID APPLICATION PROJECT

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Google Drive. Passos. Configurando o Google Drive

MANUAL DE UTILIZAÇÃO

VVS Sistemas (21)

Auxiliar de instalação (Português Brasileiro) Primeiros passos

GUIA INTEGRA SERVICES E STATUS MONITOR

Desenvolvimento para Android Prá3ca 3. Prof. Markus Endler

Manual de configuração do sistema

Serviço Seguro de Mensagens Instantâneas

MANUAL DO SISTEMA. Versão 1.00

Manual do Plone (novo portal do IFCE)

Serviço Técnico de Informática. Curso Básico de PowerPoint

Programação para Dispositivos Móveis

Passo a Passo do Checkout no SIGLA Digital

Menu Utilitários. Atualização do Banco de Dados Atualização e organização dos arquivos existentes

Tutorial. Windows Live Mail

PDFsam. Manual de Operação. Superior Tribunal de Justiça. Fevereiro/2012 versão 01 - Manual montado por Rafael Verlangieri

Introdução ao Android. SECAP 2014 Prof. Rone Ilídio - UFSJ

Desenvolvimento de um aplicativo básico usando o Google Android

MANUAL PORTAL CLIENTE AVANÇO

INTRODUÇÃO À TECNOLOGIA SERVLETS

OneDrive: saiba como usar a nuvem da Microsoft

Acessando um Banco de Dados

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource Rev: 02

Como incluir artigos:

Universidade Federal de Santa Maria UFSM Centro de Tecnologia CT. Power Point. Básico

Backup dos Trabalhos e Configurações

Apresentação de um Processo Cria4vo de Desenvolvimento de uma App Android. Realização de Dinâmica Hands- On para Construção de uma App Android

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO. Motor Periférico Versão 8.0

O Windows 7 é um sistema operacional desenvolvido pela Microsoft.

MANUAL DE CONFIGURAÇÃO DO BACKUP

Manual Administrador - Mídia System

Follow-Up Acompanhamento Eletrônico de Processos (versão 3.0) Manual do Sistema. 1. Como acessar o sistema Requisitos mínimos e compatibilidade

ROTINAS PADRÕES DO SISTEMAS

Manual de Administração

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

Cenários do CEL. Acessar ao sistema

Área de Trabalho. Encontramos: Ìcones Botão Iniciar Barra de Tarefas

Manual de Instruções para gerar arquivo do SIOPS na Contabilidade - BW Sistemas

Programação para Dispositivos Móveis

MANUAL DO GERENCIADOR ESCOLAR WEB

ARDUINO UNO Guia de Instalação

Inventário Rotativo. Página 1

Aplicativo da Manifestação do Destinatário. Manual

1 UNIT Universidade do Trabalhador Dr. Abel dos Santos Nunes

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco).

Tutorial SGCD. 1. Efetuando Login no Sistema. 2. Criando uma nova página. 3. Editando uma página já existente

INSTALAÇÃO DO CHEF FOODS NET

Manual do Sistema "Fala Comigo - Sistema de Atendimento On-Line" Editorial Brazil Informatica

Sumário: Fluxo Operacional... 3 Contatos Agenda Online Reservas de Salas Tarefas... 42

Elaborado por SIGA-EPT. Projeto SIGA-EPT: Manual do Usuário Almoxarifado

Sumário. Tutorial: Editor de Exercícios Online para o professor

LIBERAÇÃO DA PASTA ARQUIVOS DE PROGRAMA

Manual do Contribuidor. Portal de Internet. Projeto: Novo Portal de internet

NVSABRE - SISTEMA DE INFORMÁTICA LTDA

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Manual do Sistema "Vida Controle de Contatos" Editorial Brazil Informatica

Tutorial USERADM Como inserir conteúdo no Portal Transparência

Manual do usuário. Softcall Java. versão 1.0.5

Manual de Utilização

Introdução. Nesta guia você aprenderá:

Provedores de Conteúdo

15 4 Operação Avançada do Sistema: Inclusão de Nota Fiscal e seus relacionamentos

CONFIGURAÇÃO MINIMA EXIGIDA:

Treinamento de. Linx Pos

SISTEMAS OPERACIONAIS

Guia Site Empresarial

USANDO O ROUNDCUBE WEBMAIL

NÚCLEO DE TECNOLOGIA E EDUCAÇÃO CURSO: WINDOWS MOVIE MAKER TUTORIAL

Manual Comunica S_Line

Escritório Virtual Administrativo

02 - Usando o SiteMaster - Informações importantes

Apresentando o novo modelo de atendimento Centro Marista de Serviços - CMS. Curitiba, Julho de 2014

Oficina de Inclusão Tecnológica Windows Live Skydrive

1ª PARTE DIÁRIOS ELETRÔNICOS

MANUAL COMPLEMENTAR PARA INSTALAÇÃO DOS SISTEMAS SIM E SINASC EM AMBIENTES COM WINDOWS 7 (32 BITS)

Manual de Instalação do Agente Citsmart

Procedimento para Configurar a Importação/Exportação de Arquivos Texto

Manual Instalação Pedido Eletrônico

MANUAL DE UTILIZAÇÃO Aplicativo Controle de Estoque Desktop

Transcrição:

Programação para Android Aula 06: Activity, menus e action bar

Activity A classe Activity é quem gerencia a interface com o usuário. Ela quem recebe as requisições, as trata e processa. Na programação de aplicativos para Android, uma Activity está relacionada a uma Tela, mas é preciso entender também o ciclo de vida de uma Activity. Imagine que nossa aplicação seja interrompida de forma inesperada, seja por que o usuário abriu uma outra Activity e com isso houve algum fator que fez a Activity ser fechada, e até mesmo quando o Android finaliza a mesma quando vê a necessidade de liberar memória. Desta forma é preciso entender cada ciclo de vida de uma Activity para realizar a programação necessária a cada ciclo de uma Activity. Uma Activity possui vários estados em seu ciclo de vida, conheceremos os diversos estados nos slides a seguir.

Activity Ciclo de Vida

Activity Ciclo de Vida Métodos de uma Activity oncreate() - É a primeira função a ser executada em uma Activity. Geralmente é a responsável por carregar os layouts XML e outras operações de inicialização. É executada apenas uma vez. onstart() - É chamada imediatamente após a oncreate() e também quando uma Activity que estava em background volta a ter foco. onpause() - É a primeira função a ser invocada quando a Activity perde o foco (isso ocorre quando uma nova Activity é iniciada). onrestart() - Chamada imediatamente antes da onstart(), quando uma Activity volta a ter o foco depois de estar em background.

Activity Ciclo de Vida Métodos de uma Activity onresume() - Assim como a onstart(), é chamada na inicialização da Activity e também quando uma Activity volta a ter foco. Qual a diferença entre as duas? A onstart() só é chamada quando a Activity não estava mais visível e volta a ter o foco, a onresume() é chamada nas retomadas de foco. ondestroy() - A última função a ser executada. Depois dela, a Activity é considerada morta ou seja, nao pode mais ser relançada. Se o usuário voltar a requisitar essa Activity, um novo objeto será contruído.

Activity - Criação Para se criar telas no Android, é necessário trabalhar com o conceito de activity. Assim como em programação Windows Desktop que você trabalha com form, onde cada um do mesmo equivale a uma tela. No Android aplica-se o termo de activity. Uma aplicação Android pode ter várias Activity s, porém o usuário só interage com uma de cada vez. As inicializações e configurações da interface com o usuário devem ser feitas sempre no método oncreate(), pois ele é o primeiro método a ser executado quando a Activity é iniciada. Para criar uma activity basta criar uma classe no Java e herdar da classe android.app.activity. Desta forma automaticamente já há torna uma possível atividade no Android. Após estendermos a classe é obrigatório rescrever o método oncreate para selecionar um arquivo XML, que será seu layout.

Activity - Criação No código Java, após estender a classe Activity devemos informar qual o layout relacionado conforme código abaixo: public class Janela2Activity extends Activity { @Override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); //Especificamos abaixo qual o layout setcontentview(r.layout.janela2);

Registrando Activity Após criarmos a classe é necessário registrar a activity. O Android precisa saber quais classes são atividades, não basta simplesmente criar uma classe e a estender, é necessário registra-la. Para você registrar a activity, basta abrir o arquivo Manifest.XML, e no mesmo deve ser feito o registro da activity, ou seja, incluir uma nova activity. <activity android:name="com.example.aula06.janela2activity" android:label="janela 2"> </activity> Em android:name é informado o nome da classe. OBS: As marcações intente filter é utilizado para definir qual a Activity inicial de nossa aplicação.

Exemplo 01 Criando múltiplas activities Iremos criar duas activities. A classe MainActivity é a activity (atividade) principal do projeto e a classe Janela2Activity" que será chamada pela primeira tela. A primeira atividade é simplesmente um botão, que quando clicado abre a segunda atividade, que por sua vez consiste em um simples campo de texto editável. A segunda activity não precisa de um botão "Sair", pois o usuário pode simplesmente clicar no botão "Voltar" do emulador.

Exemplo 01 Criando múltiplas activities Para carregar uma nova activity devemos criar uma Intent (Intenção). Intent são comandos que podemos enviar ao Sistema Operacional Android para realizar alguma ação. Com Intents você podemos enviar ou recuperar dados. O método startactivity(intent intent) envia dados e requisições de telas, o método getintent() recupera uma intent enviada por meio do startactivity(), o método putextra( nome_de_identificação, valor) insere na intent algum valor, entre outras operações. Neste exemplo usaremos uma Intente para requisitar uma tela(ativity). O código da Intent para abrir uma activity está programado no Click do botão inserido na MainActivity public void onclick(view v) { //Cria uma nova intenção passando como parâmetro a classe atual e a nova classe Intent i = new Intent(MainActivity.this,Janela.class); //inicia uma atividade passando como parâmetro a inteção criada acima MainActivity.this.startActivity(i);

Enviando e recebendo dados entre Activities É possível enviar e receber dados entre as activitys. Para enviar dados para uma activity que será carregada usamos o comando putextra conforme o exemplo a seguir: Intent dados = new Intent(MainActivity.this,DadosActivity.class); dados.putextra("id", id); dados.putextra("nome", nome); dados.putextra("telefone", telefone);

Enviando e recebendo dados entre Activities Para receber os dados enviados por uma activity usamos o comando getstringextra conforme exemplo a seguir. //cria uma nova intenção para buscar os dados enviados pela activity anterior Intent valores = getintent(); //pega os valores enviados da activity anterior e preenche os campos String nome,telefone; nome = valores.getstringextra("nome"); telefone = valores.getstringextra("telefone");

Menu e action bar Um menu é útil para disponibilizar acesso a diferentes partes de uma aplicação. Para adicionar um menu a uma aplicação Android devemos criar/utilizar um arquivo XML para os itens do menu. Definem-se as opções individuais usando o elemento item. Especificam-se os atributos id, icon e title para cada opção. OBS: Durante a criação do projeto, caso o programador tenha optado por um template com ActionBar, uma pasta menu juntamente com um arquivo.xml já estará criado no projeto.

Menu e action bar Criação de itens de menu no arquivo menu.xml <menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/menujanela2" android:title="janela 2"/> <item android:id="@+id/menujanela3" android:title="janela 3"/> <item android:id="@+id/menujanela4" android:title="janela 4"/> </menu> O atributo showasaction permite especificar quando e como é que cada opção aparece-se na ActionBar (a ActionBar é a barra com o título que aparece no topo de uma aplicação Android a partir da versão Honeycomb). Os valores disponíveis são: ifroom, withtext, never ealways.

Menu e action bar Depois é preciso atualizar a Activity onde o menu vai aparecer. É preciso criar o método oncreateoptionsmenu para construir o menu. Esta função já está incluída na Activity. @Override public boolean oncreateoptionsmenu(menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getmenuinflater().inflate(r.menu.main, menu); return true; O método getmenuinflater().infalte é responsável por inflar um menu com os itens definidos no arquivo.xml

Menu e action bar Usamos o método onoptionsitemselected para programar a opção do menu selecionada pelo usuário @Override public boolean onoptionsitemselected(menuitem item) { if (item.getitemid() == R.id.menuJanela2) { Toast.makeText(getBaseContext(), "Você clicou na Janela 2", Toast.LENGTH_SHORT).show(); return true; else if (item.getitemid() == R.id.menuJanela3) { Toast.makeText(getBaseContext(), "Você clicou na Janela 3", Toast.LENGTH_SHORT).show(); return false;

return false; Menu e action bar Podemos usar os itens do menu para chamar uma Activity, assim como mostrado no botão para chamar a Janela 2. Para isto usamos o método onoptionsitemselected. public boolean onoptionsitemselected(menuitem item) { if (item.getitemid() == R.id.menuJanela2) { Intent i = new Intent(MainActivity.this,Janela.class); MainActivity.this.startActivity(i); return true; else if (item.getitemid() == R.id.menuJanela3) { Intent i = new Intent(MainActivity.this,Janela2Activity.class); MainActivity.this.startActivity(i); return true;

Na próxima aula... Persistência de dados: Shared Preferences e Internal Storage