You are on page 1of 3

Android: Mudando de tela e passando dados | Carlos Cavalcanti Página 1 de 3

Carlos Cavalcanti INÍ CIO

SO BR E

Android: Mudando de tela e passando dados


CARLOSCAVALCANTI.COM
dezembro 4, 2011 · by carloscavalcanti

CarlosCavalcanti.com
Bem, é muito importante no Android podermos trocar de telas e passar
algum conteúdo, alguma informação de uma tela para outra. Isso é Curtir

possível através da Intent.


53 pessoas curtiram
A Intent possui um método chamado putExtra que possui dois CarlosCavalcanti.com.
argumentos de entradas, onde o primeiro é o nome do parâmetro e o
segundo o valor do mesmo.

Imagine que estamos na ActivityPrincipal e queremos ir para a


ActivitySecundaria, onde precisamos passar o valor de uma variável do
tipo string chamada nome com o conteúdo “joãozinho”.

Teremos o seguinte:

1 String variavelNome = "Joãozinho";


2 Intent intent = new Intent(this, ActivitySecundaria.class);
3 intent.putExtra("nome", variavelNome);
4 startActivity(intent);

Neste trecho de código, podemos ver que estamos criando a variavelNome


Plug-in social do Facebook
e atribuindo o valor “Joãozinho” para ela, e logo em seguida instânciamos
uma intent com a INTENÇÃO de de passar o valor da variável e depois
chamar a outra tela(ActivitySecundaria).
T WITTER

Até aí tudo bem, e na ActivitySecundaria, como devemos fazer? ◦ RT @GizmodoBR: Brasileiros


Nela, precisaremos também criar uma Intent que “capture” o valor do
compraram mais smartphones e
“nome” que despejamos na ActivityPrincipal.
assinaram menos linhas fixas nos
Ficará da seguinte forma:
últimos anos: goo.gl/BfuTlh17 hours ago
1 Intent intent = getIntent(); ◦ RT @DADMUnisinos: Android é mais
2 String nome = intent.getStringExtra("nome");
seguro do que iPhone, afirma diretor do
Instanciamos a intent com o getIntent() e logo após chamamos o metodo
Google.
getStringExtra(“nome”) para capturar o conteúdo que tínhamos passado
idgnow.uol.com.br/mobilidade/201….
na tela anterior.
Caso o valor que quiséssemos capturar fosse um double, por exemplo, Fonte: @idgnow1 week ago

deveríamos utilizar o método ◦ RT @DiariodoAndroid: Android 4.4 Kit-


getDoubleExtra() e se fosse um boolean seria getBooleanExtra() e assim Kat: confira os dispositivos que
por diante…
receberão a atualização. goo.gl/gzHuJo

#Android #KitKat... h… 1 week ago

Share this: ◦ RT @DiariodoAndroid: 12 recursos que

o iOS 7 deveria copiar do Android.

goo.gl/pNTHzZ #iOS #Android

Curtir isso: fb.me/ZiTk21Mn2 weeks ago

◦ Introdução ao Titanium as 20h30 by


Be the first to like this.
#MobGeek youtube.com/watch?
Esse post foi publicado em Android, Intent. Bookmark o link permanente.
v=Rs1s_l…3 weeks ago

« DESIGN PATTENRS: SINGLETON ANDROID: AUMENTANDO A


QUALIDADE COM TESTE FUNCIONAL
UTILIZANDO ROBOTIUM »

11 comentários sobre “Android: Mudando


de tela e passando dados”

Renan disse:
dezembro 14, 2012 às 1:31 am

Queria saber como faço para quando clico no botão voltar do aparelho voltasse para
uma tela específica, poderia me ajudar? Seguir

http://carloscavalcanti.com/2011/12/04/android-mudando-de-tela-e-passando-dados/ 19/10/2013
Android: Mudando de tela e passando dados | Carlos Cavalcanti Página 2 de 3

Resposta

carloscavalcanti disse:
dezembro 15, 2012 às 5:14 pm

Você precisa “ouvir” o botão back do Android e fazer alguma ação.


Precisa-se implementar o método onKeyDown e verificar se o botão
pressionado é o back.
Exemplo:
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
//Sua ação…
return false;
}
return super.onKeyDown(keyCode, event);
}

Resposta

Mauricio Lima disse:


março 9, 2013 às 10:15 pm

Parabens pelo post.


Voce poderia me dizer como faço para pegar o valor passado da segunda janela para a
primeira janela?
Obrigado!

Resposta

carloscavalcanti disse:
março 10, 2013 às 1:30 am

Olá Mauricio, obrigado.

Bem, para fazer o inverso pode-se utilizar o método


startActivityForResult.

http://developer.android.com/training/basics/intents/result.html

Resposta

Augusto Gomes de Oliveira disse:


março 20, 2013 às 1:01 am

estou com um sistema que fica trocando de tela


Um joguinho, para descobrir o numero aleatorio
só que gostaria de controlar o numero de acertos e o numero de tentativas.
Como faço para não perder o valor das variaveis que estou utilizando???

Resposta

carloscavalcanti disse:
março 20, 2013 às 1:57 am

Você pode usar variaveis publicas e estaticas para armazenar esses


valores.
Mas aí, toda vez que fechar e abrir a aplicação perderá essas
informações.
Você pode gravar essas informações em um simples arquivo txt ou no
banco de dados (SQLite) ou usar o sharedPreferences.

SharedPreferences:
http://developer.android.com/guide/topics/data/data-
storage.html#pref

Resposta

Seguir

http://carloscavalcanti.com/2011/12/04/android-mudando-de-tela-e-passando-dados/ 19/10/2013
Android: Mudando de tela e passando dados | Carlos Cavalcanti Página 3 de 3

Augusto Gomes de Oliveira disse:


março 20, 2013 às 10:33 pm

Mais o problema é que a aplicação é só um joguinho para


testarmos o conhecimento adquirido em sala de aula, nós
só estamos usando o intent, budle, text view, edit text e
button… é uma aplicação bem simples, só que acho que o
código de verificar se está certo ou errado o numero que
foi passado pra segunda tela deve ficar fora do onCreate…
tem algum outro metodo que não crie toda vez que roda a
primeira tela???

carloscavalcanti disse:
março 20, 2013 às 11:15 pm

Dá uma pesquisada no ciclo de vida de uma activity, no


proprio google você vai encontrar muita coisa.

E também, se quiser, dá uma olhada na página 33 desse


slide:
http://www.slideshare.net/carloscavalcanti/aula-android
-02pdf

Maico disse:
agosto 21, 2013 às 3:08 am

Me ajudou muito esse post, era o que estava procurando a muito uma semana.

Resposta

Leni disse:
agosto 23, 2013 às 1:34 pm

Bom post…
Como seria se eu quisesse enviar essa intent para uma classe.java, ou seja, de uma
ClasseActivity para uma ClasseJava, por exemplo:
public class Classe2{

tentei aqui, porem o getIntent() da erro.

Resposta

carloscavalcanti disse:
agosto 23, 2013 às 2:01 pm

É só passar por parametro.

Resposta

Deixe uma resposta

Blog no WordPress.com. | O tema Ascetica.

Seguir

http://carloscavalcanti.com/2011/12/04/android-mudando-de-tela-e-passando-dados/ 19/10/2013

You might also like