quarta-feira, 25 de abril de 2012

Android: Passagem de parâmetros entre Activities(Telas)

Neste artigo irei demonstrar a passagem de parâmetros entre duas Activities(Telas). No post anterior utilizamos o método startActivity(intent) para navegar entre as telas da aplicação.

Irei criar uma aplicação básica como exemplo para demostrar a passagem de parâmetros entre Telas. Na primeira tela terá um campo para receber um texto e um botão que ao clicar passará o valor para a segunda tela.
  1. Crie um novo Projeto com o nome "PassagemParametros".
  2. Na Primeira Activity "PassagemParametros.java" será a nossa primeira Tela.

  3. Para passar parâmetros se usa a classe android.os.Bundle e o método putExtras(Bundle) na intent que será passado como parâmetro para a próxima tela.
    O método putString(chave, valor) utilizei uma String como parâmetro, mas poderia ter usado putInt no caso o valor ser um integer. A classe Bundle tem métodos para diferentes tipos primitivos como o putBoolean, putChar, putFloat e vários outros. A variável "valor" recupera o texto da EditText do "campoTexto" utilizando os métodos "getText" e "toString".

    Ao executar vejamos como ficou:

  4. Agora irei criar a segunda Activity "SegundaTela.java" que receberá o valor da primeira tela.
    O método getIntent() recupera os parâmetros enviados. Depois de recuperada o método getExtras() retorna o mesmo bundle criado para enviar os parâmetros.
    Para ler os parâmetros passados pelo bundle basta chamar o método getString e passar o parâmetro String "mensagem" da activity anterior.
    Ao executar novamente vejamos como ficou:

    Até a próxima, espero que tenham gostado.