27
Aula 3 Conceitos básicos, Activities e Views.

Programando Android - Aula 3

Embed Size (px)

Citation preview

Page 1: Programando Android - Aula 3

Aula 3

Conceitos básicos,

Activities e Views.

Page 2: Programando Android - Aula 3

No Android, alguns conceitos podem ser

diferentes do que estamos acostumados

a trabalhar. Por se tratar de uma

plataforma móvel, a principal

preocupação que deve-se ter é fazer

com que as tarefas a ser executadas

levem o menor tempo e o menor custo

computacional possível.

Conceitos Básicos

Page 3: Programando Android - Aula 3

Pacotes

Assim como no Java, o Android organiza

suas classes seguindo um modelo de

pacotes. É possível utilizar qualquer

padrão de projeto compatível com Java.

Deve-se ter o cuidado somente de não

fragmentar excessivamente as classes

para que o custo computacional de

instanciação seja minimizado

Page 4: Programando Android - Aula 3

Modelo de organização de

pacotes

Page 5: Programando Android - Aula 3

Modelo de organização de

pacotes

net.android = Pacote inicial onde ficará a classe main da aplicação.

net.android.componentes = Pacote que conterá os componentes customizados criados para a aplicação.

net.android.controller = Pacote que conterá as classes Activity que controlarão as telas da aplicação.

net.android.dao = Classes Data Access Object de acesso ao banco de dados.

net.android.entidade = Classes de entidade (pojo).

net.android.transmissao = Classes destinadas ao acesso e transmissão de dados.

Page 6: Programando Android - Aula 3

Modelo de organização de

pacotes

É claro que o modelo aqui definido é

apenas uma sugestão de organização

de classes. Nosso curso vai usar esse

modelo como padrão. Você pode usar a

organização que desejar desde que siga

algumas sugestões de padrões de

projeto.

Page 7: Programando Android - Aula 3

Classe R

O Android cria automaticamente uma classe

chamada “R”. Essa classe em hipótese alguma

deve ser modificada pois ela é gerada

automaticamente cada vez que o projeto é

salvo. Essa classe contém as referências de

todos os views (itens de tela) para ser usadas

nas classes de negócio.

Page 8: Programando Android - Aula 3

APIs adicionais

No projeto é possível inserir APIs adicionais que

abstraem uma série de funções ao programador.

É possível urilizar uma biblioteca criada

nativamente ou uma biblioteca de terceiros. Se

no momento da criação do projeto for

selecionada uma API adicional na versão do

Android, estas aparecerão aqui.

Page 9: Programando Android - Aula 3

Arquivos extras adicionais

Se na sua aplicação for necessário adicionar

algum arquivo externo como um vídeo ou um

áudio, estes arquivos devem ser colocados

nessa pasta.

Page 10: Programando Android - Aula 3

Recursos

No Android, tudo que for tela, imagem e xml é considerado recurso. Um recurso pode ser usado de qualquer parte da aplicação pois eles são variáveis estáticas (não precisam ser instanciados para ser usados).

Os recursos de imagem, por exemplo, podem ser adaptados de acordo com o tamanho da tela que a aplicação rodará. Assim, se o usuário abrir o sistema em um smartphone com tela pequena, o sistema carregará a imagem pequena, se for aberto num tablet, carregará a imagem grande.

Page 11: Programando Android - Aula 3

Drawables

Drawable (desenhável) são imagens ou

componentes que são desenhados na tela. O

android usa 3 tamanhos padrões de imagem

para desenhar na tela do aparelho de acordo

com seu tamanho de tela.

Para que este recurso seja possível, é necessário

que sejam criadas imagens iguais, com o mesmo

nome, mas com tamanhos diferentes e estas

sejam colocadas nas pastas correspondentes aos

seus tamanhos.

Page 12: Programando Android - Aula 3

Drawables

Exemplo: Vamos criar o ícone da nossa

aplicação. Esse ícone deve ter um tamanho

proporcional ao tamanho da tela independente

do tamanho da tela do dispositivo que vai rodar

nossa aplicação. Neste caso criamos 3 imagens

com a seguinte configuração:

Tamanho

72x72 px Tamanho

48x48px Tamanho

36x36px

Page 13: Programando Android - Aula 3

Drawables

As 3 imagens terão o EXATO MESMO NOME e

deverão ser colocadas nas pastas

correspondentes aos seus tamanhos.

drawable_hdpi = imagem de 72 px

drawable_mdpi = imagem de 48 px

drawable_mdpi = imagem de 36 px

Page 14: Programando Android - Aula 3

Drawables

Deste modo, quando eu precisar usar esta imagem na minha aplicação, basta que eu chame a imagem pelo nome “ic_launcher” que o Android escolherá a imagem que melhor se adequar a meu tamanho de tela.

Se eu quiser que o Android use a mesma imagem independente do tamanho da tela, basta que eu copie as imagens pra pasta drawable-mdpi.

Page 15: Programando Android - Aula 3

Values

A pasta Values contém arquivos de XML que podem ser usados como substitutos de valores usados no sistema.

Por exemplo: se eu quiser criar um arquivo de textos que devem ser usados nos labels do sistema e que esses textos mudem de acordo com o idioma do aparelho. Eu posso criar um arquivo de texto para cada idioma que o Android irá fazer as devidas substituições.

Page 16: Programando Android - Aula 3

Values

É possível também criar constantes que

serão usadas no sistema como cores,

tamanhos, backgrounds, sons, etc.

Basta que seja criada uma tag e seja

dada um valor pra ela.

Page 17: Programando Android - Aula 3

Values

Na hora de usar, basta chamar a tag

usando seguinte anotação:

@string/nome_da_tag

Onde “nome_da_tag” é o nome usado

para criar a tag no arquivo de String.

Page 18: Programando Android - Aula 3

Values

Tag criada no arquivo string.xml

Tag usada numa tela

Page 19: Programando Android - Aula 3

AndroidManifest.xml

Arquivo de manifesto contém uma série

de informações que são importantes

para a aplicação. Ele contém as

informações que mostrarão quais

requisitos de hardware o dispositivo

deverá cumprir para rodar a aplicação,

os pacotes importados, as classes de

activity, versão e nome do sistema e

outras informações.

Page 20: Programando Android - Aula 3

AndroidManifest.xml

1

2

3

4

Page 21: Programando Android - Aula 3

AndroidManifest.xml 1. Informações de numero e nome da

versão e nome do pacote principal da

aplicação.

2. Carrega bibliotecas externas.

3. Orientação de tela, nome e ícone da

aplicação.

4. Declaração das activities usadas na

aplicação

Page 22: Programando Android - Aula 3

AndroidManifest.xml

5

6

Page 23: Programando Android - Aula 3

AndroidManifest.xml 5. Versão mínima do Android necessária

para rodar a aplicação

6. Declaração das necessidades de

hardware que o sistema precisará para

funcionar.

Page 24: Programando Android - Aula 3

Activities

Activity é a classe que gerencia todos os elementos de tela da aplicação. É ela que recebe as ações disparadas por botões, links, popula listas e mostra efeitos na tela.

Cada tela no Android deve ter sua própria activity, embora seja possível gerenciar várias telas com a mesma activity, é enfaticamente NÃO recomendado.

Page 25: Programando Android - Aula 3

Activity

Page 26: Programando Android - Aula 3

View Todo elemento de tela como um botão,

uma lista, um label, etc é chamado de

View.

As views podem ser acessadas

diretamente utilizando o método

“findViewById(“nome_view”)” da classe

Activity.

O Android disponibiliza diversos

componentes de tela (view) e ainda é

possível criar views customizadas

misturando as características de várias

views para criar uma view única.

Page 27: Programando Android - Aula 3

View