Baixe o app para aproveitar ainda mais
Prévia do material em texto
Análise AppSoma Prof. Jorge Bergson / Prof. Milton Escóssia � O projeto Android implementado na aula anterior apresentou como criar uma calculadora simples, que permite somar 2 números. � Esse exercício permitiu explorar conceitos utilizados como: ◦ utilização de widgets para construção da UI; ◦ captura e tratamento de eventos gerados pelo click do botão; ◦ exibir janela de alerta com o resultado da soma. � A construção da UI pode ser realizado de duas formas: a) diretamento no arquivo de layout (xml), usando-se as tags views e viewgroups. b) ou na ferramenta “Graphic Layout”, utilizando-se a paleta de componentes do Android. � A entrada de dados é realizada pelos componentes EditText. ◦ necessário criar as instâncias desses componentes dentro da Activity; � Para realizar a soma, o usuário deverá informar os dados nas caixas de texto (EditText) e pressionar o botão “Somar” (Button): ◦ É necessário obter e tratar os dados informados pelo usuário; ◦ Isso é realizado através do tratamento do evento “onClick” do botão “Somar”. � Para responder a ação de click do botão é necessário: ◦ adicionar um ouvinte (listener) ao componente; ◦ implementar o método “onClick( )” com as instruções a serem executadas. � Opção: fazer uso de uma classe Anônima para tratar o evento específico do botão. � Método que adiciona um ouvinte (listener) a ação de clique no componente indicado. � Requer como parâmetro uma instância da classe OnClickListener. � Essa instância deve implementar o método onClick( ) com as instruções desejadas. � Essa classe pode ser implementada como uma classe anônima do Java, pois: ◦ será utilizada apenas pela classe que contém esse botão específico; ◦ terá acesso aos atributos e métodos da classe que a contém. � É um classe interna sem nome. � Não possui uma declaração de classe. � O objeto anônimo implementa uma classe ou uma interface. � Uma instância da classe anônima existe dentro de uma instância de uma classe padrão Java. � Não possui construtor. � O uso mais comum das classes anônimas ou internas é para lidar com eventos de botão. ◦ quando não for necessário outra instância dela para tratar outros eventos. ◦ necessidade de criar classes muito pequenas (um ou dois métodos), e de uso exclusivo da classe que a implementa. � Atenção: i) Essas classes devem ser mantidas curtas; ii) Permite ter acesso a todos os membros da classe envoltória. � Implementada para permitir tratar o clique do botão “Somar” para: ◦ obter os valores numéricos informados nos componentes EditText pelo usuário; ◦ realizar a soma; ◦ exibir o resultado em uma janela de alerta do Android. � O Android permite criar janelas de alerta para exibir mensagens ao usuário. Dentre as classes, as mais comuns: ◦ AlertDialog ◦ Toast � A aplicação AppSoma utilizou a classe AlertDialog. � O Android disponibiliza a classe AlertDialog.Builder para construção de janelas de alerta personalizadas. � Essa classe permite criar janelas de alerta personalizadas, em primeiro plano. ◦ permite personalizar os botões da janela. ◦ permite adicionar tratamento de evento personalizado a esse botões. � Principais métodos: � No projeto AppSoma, essa classe é utilizada para exibir o resultado da soma ao se clicar no botão “Somar”. � É possível adicionar comportamento personalizado aos botões da janela de diálogo: � A classe Toast é uma alternativa para criação de janelas de alerta no Android. ◦ permite exibir uma janela de alerta temporária. ◦ não permite realizar interação com o usuário. ◦ permite criar mensagens simples ou views personalizadas. � Exibindo uma mensagem simples: � Exibindo uma mensagem complexa: I) Modifique o exercício da aula anterior, para completar a criação de uma calculadora composta pelas operações básicas: ◦ Adição ◦ Subtração ◦ Multiplicação ◦ Divisão II) Insira o tratamento de evento no botão “OK” da instância do AlertDialog para limpar os campos do AppSoma ao retornar à aplicação. III) Altere a forma de exibição do alerta para usar a classe Toast ao invés da classe AlertDialog. IV) Altere a aplicação para conter um único EditText para entrada de dados e exibição da resposta.
Compartilhar