• Nenhum resultado encontrado

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS E SEM FIO: ACTIVITY

N/A
N/A
Protected

Academic year: 2021

Share "PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS E SEM FIO: ACTIVITY"

Copied!
14
0
0

Texto

(1)

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS E SEM FIO:

ACTIVITY

Prof. Me. Pedro Henrique Neves da Silva

(2)

• Existem 2 métodos que podem ser utilizados para iniciar uma activity:

startActivity(intent)

startActivityForResult(intent, codigo)

• A diferença entre eles é que o método startActivity(intent) apenas inicia a próxima activity sem qualquer vinculo.

• Já o método startActivityForResult(intent, codigo) recebe um parâmetro que identifica essa chamada, para que posteriormente essa segunda activity possa retornar alguma informação para a activity que a chamou.

• Esse método é utilizado caso a activity inicial que fez a chamada esteja interessada em ler o retorno quando a segunda activity terminar.

Activity

Navegação entre telas

(3)

Exemplo: uma app que exibe uma tela para escolher um contato do celular e, logo depois de escolher o contato, a informação é retornada para a activity inicial, para, por exemplo, enviar um e-mail para o contato selecionado anteriormente.

Activity

Navegação entre telas

(4)

startActivity(intent) e startActivityForResult(intent, codigo) recebem um objeto do tipo android.content.Intent como parâmetro.

• A classe android.content.Intent é o coração do Android (veremos mais nas próximas aulas).

Activity

Navegação entre telas

(5)

• Já sabemos que para navegar entre telas da app usamos o método startActivity(Intent).

• Para passar parâmetros de uma tela para outra usamos a classe android.os.Bundle, que funciona como uma hashTable, e o método putString(chave, valor) é utilizado para configurar propriedades.

• O método putExtras(bundle) da classe android.content.Intent recebe o objeto Bundle que será passado como parâmetro para a outra tela.

Activity

Passagem de parâmetros para a próxima tela

(6)

Ler o parâmetro enviado:

• Usamos o método getIntent() para recuperar a intent utilizada para chamar essa nova activity.

• Observe que é necessário validar se a intent não está nula, pois isso pode acontecer caso a intent tenha sido iniciada pelo usuário e não pela aplicação.

• Com o intent é possível chamar o método getExtras() que retorna o mesmo Bundle criado para enviar os parâmetros.

• Também é necessário validar se o Bundle retornado não está nulo, por que isso também pode ocorrer caso nenhum parâmetro seja enviado.

Activity

Passagem de parâmetros para a próxima tela

(7)

Ler o parâmetro enviado:

• Para ler os parâmetros passados pelo Bundle, basta chamar os métodos getString(chave), getBoolean(chave), getChar(chave), getByArray(chave), getShort(chave), getInt(chave), getLong(chave), getFloat(chave), getDouble(chave), etc.

• Em nosso caso utilizaremos o parâmetro getString(“msg”)

Activity

Passagem de parâmetros para a próxima tela

(8)

• Também podemos passar os parâmetros diretamente pela classe Intent.

• E para ler os parâmetros usamos o método getStringExtra(chave)

• Igualmente existem métodos para todos os tipos primitivos:

getIntExtra(chave), getLongExtra(chave), getBooleanExtra(chave), getFloatExtra(chave), etc.

Activity

Passagem de parâmetros para a próxima tela

(9)

• As classes android.app.ListActivity e com.google.android.maps.MapActivity são utilizadas para exibir telas com uma lista de elementos e mapas respectivamente.

• São subclasses de Activity e encapsulam vários métodos para exibir o conteúdo na tela, restando ao programador apenas preencher o contrato definido por essa classe.

• ListActivity serve para exibir uma lista de itens na vertical.

• O método setContentView(view) é chamado automaticamente pelo ListActivity, informando o ListView, de forma que o programador não precisa se preocupar com a view da tela e sim, apenas informar os dados que irão preencher a lista.

Activity

ListActivity – Lista de Itens

(10)

• ListActivity faz uso da classe android.widget.ListAdapter, que faz a ligação entre o componente ListView e os valores que a aplicação deseja exibir na tela.

• Ao informar os valores para esse adaptador, estes podem ser informados como um simples array de strings ou até utilizando um Cursor, interface utilizada pelo Android para percorrer elementos.

• ListActivity já define internamente o componente ListView, de forma que não é necessário chamar o método setContentView(view).

Activity

ListActivity – Lista de Itens

(11)

• Cabe ao programador apenas utilizar os métodos que essa classe contém para facilitar todo o trabalho de criação e manipulação da lista.

onListItemClick(listView, view, posicao, id) – selecionar um item.

getListAdapter().getItem(indice) – recuperar informações do item selecionado.

Activity

ListActivity – Lista de Itens

(12)

• Um ArrayAdapter, usado para preencher a lista de itens.

• Define um array de strings que será exibido na tela na forma de lista.

• É definido pela classe android.widget.ArrayAdapter

• Essa classe é capaz de mapear o array de strings para ListView, que está contida na ListActivity.

• Observe que no construtor da classe ArrayAdapter foram informados 3 parâmetros: a referência da própria classe/activity (this), um recurso de layout predefinido pelo Android e o array de strings para preencher a lista.

Activity

ArrayAdapter

(13)

• Ao executar o exemplo será possível visualizar a lista de itens definidos anteriormente através do método onListItemClick(listView, view, posicao, id) que é executado automaticamente.

• E p a r a r e c u p e r a r o i t e m s e l e c i o n a d o u s a m o s o m é t o d o getListAdapter.getItem(posicao).

Activity

ArrayAdapter

(14)

Referências

Documentos relacionados

Desta forma, além de retardar a oxidação lipídica, o preparado desenvolvido apresentou benefícios como estabilização da cor e manutenção das características sensoriais

Podem treinar tropas (fornecidas pelo cliente) ou levá-las para combate. Geralmente, organizam-se de forma ad-hoc, que respondem a solicitações de Estados; 2)

num ritmo aproximado de uma flexão em cada 3 segundos, partindo da posição facial, mantendo o corpo em extensão, atingindo ou ultrapassando o nível de prestação definido (

A partir dos estudos empíricos será possível (re)conhecer comportamentos de recusa e rejeição por parte de mulheres pentecostais, pois as práticas femininas de

17 CORTE IDH. Caso Castañeda Gutman vs.. restrição ao lançamento de uma candidatura a cargo político pode demandar o enfrentamento de temas de ordem histórica, social e política

A Lista de Fauna Ameaçada de Extinção e os Entraves para a Inclusão de Espécies – o Exemplo dos Peixes Troglóbios Brasileiros.. The List of Endangered Fauna and Impediments

Para esse fim, analisou, além do EVTEA, os Termos de Referência (TR) do EVTEA e do EIA da Ferrogrão, o manual para elaboração de EVTEA da empresa pública Valec –

O Google informou que no relatório não foi analisado o Android 3.0 Honeycomb, por ser exclusivo para tablets, e que os dados referem-se a dispositivos ativados entre 27 de janeiro e