Android Studio - Criar botão que "chame" uma outra tela

  • Respostas:13
Gean M Gonçalves
  • Posts no fórum: 9

20/03/2015, 18:43:19 via Web

Prezados (as),
Estou começando no desenvolvimento Android.
Preciso saber como fazer um botão chamar uma outra tela criada no Android Studio.
Já criei duas telas "activity_main.xml" e "tela2.xml" só para teste.
Estou querendo saber, após criar um botão na "activity_main.xml" como fazer essa botão abrir a próxima tela? "tela2.xml"
OBS: Gentileza me ensinar a forma mais fácil possível.
Grato.

Responder
Leonardo Dias
  • Posts no fórum: 2

24/03/2015, 16:03:05 via Web

Olá Gean,

Ao criar o seu botão no xml você atrelou um id a ele dessa forma, certo?

<Button
    android:id="@+id/nomeDoBotao"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="@string/textoDoBotao" />

Então no seu arquivo Java, primeiro você deve fazer uma referência ao ID criado, dessa forma:

Button nomeParaOBotao = (Button) findViewById(R.id.nomeDoBotao);

Agora você pode colocar uma ação de chamar outra tela nele através do nome que você criou, dessa forma:

nomeParaOBotao.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Intent it = new Intent(MainActivity.this, NovaTela.class);
            startActivity(it);
        }
    });

E é isso, qualquer dúvida posta ai.

Esperto ter ajudado!

;)

VicelosAnderson Marcosmare neuhausSeimon AthaydeAdriano BarrosCatarina De PaulaGean M Gonçalves

Responder
Pedro
  • Posts no fórum: 771

05/04/2015, 07:57:17 via Web

Legal, espero que o menino volte para agradecer,essa parte do forum é muito boa, mas o pessoal não anda muito por aqui. Há e Leonardo, tu é programador também, volta e meia eu me pega com uma duvida ou outra, estou aprendendo a desenvolver agora, e as vezes me perco. Embora tenha o XDA e outros sites com bons conteúdo eu não tenho paciência, pois a maioria é em inglês.

¬ Device: L Bello / Prime
¬ System: Android 5.0.2
¬ Version: LG D335 v20c

Possui um L Prime? Visite o fórum do L Prime no AndroidPit ou a comunidade LG L Prime no G+ agora mesmo!

Gean M Gonçalves

Responder
Gean M Gonçalves
  • Posts no fórum: 9

23/04/2015, 18:13:47 via Web

Legal cara, valeu demais.
Abraço!!
O APP ficou fera d+++

Responder
Rudney Campos
  • Posts no fórum: 1

24/08/2015, 18:16:19 via Web

Boa tarde.
Poderia me ajudar à respeito do menu, quero criar um menu e quando selecionar qualquer item do menu redirecione para a tela selecionada.

Poderia me ajudar ?

Responder
Academia Android
  • Posts no fórum: 2

01/02/2017, 19:14:48 via Web

Da uma olhada no React Native, Tem uns recursos legais pra intergrar apps com aplicacoes ja existentes via webservices. Tudo em http. Vc pode criar scripts em PHP por exemplo consumi-los em seus apps.

Para quem está começando em desenvolvimento mobile vale a pena conhecer o React Native. Framework desenvolvido por engenheiros do Facebook para fazer apps nativos para Android e iOS.

Muito fácil. Usa JavaScript e CSS.

Tem uma aula grátis em academiaandroid com br

Espero ter ajudado.

Responder
Vitoria Veiga
  • Posts no fórum: 2

17/02/2017, 03:47:10 via Web

e como eu faço se tiver varios botões para chamar varias telas ?
exemplo minha tela principal vai ter 3 botões e cada um chamara uma tela, pode me ajuda ?

Responder
Seimon Athayde
  • Posts no fórum: 2

09/04/2017, 21:04:38 via Web

excelente resposta, meu caro.
essa parte do fórum é que nos ajuda em nossos erros e acertos.

Responder
Seimon Athayde
  • Posts no fórum: 2

09/04/2017, 21:22:29 via Web

o mesmo que o amigo Leonardo Dias citou.
para cada botão adicionado, será identificado uma ID.
e no código java será acrescentado a chamada pra cada id.

 IDdoBotao.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Intent it = new Intent(MainActivity.this, Tela1.class);
                startActivity(it);
            }
        });
    IDdoBotao2.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Intent it = new Intent(MainActivity.this, Tela2.class);
                startActivity(it);
            }
        });
IDdoBotao3.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Intent it = new Intent(MainActivity.this, Tela3.class);
            startActivity(it);
        }
    });

IDdoBotao = representa o nome que vc atrelou ao seu botão no xml ao acrescentá-lo.

Vando Sepmare neuhaus

Responder
Fernando
  • Posts no fórum: 1

21/07/2017, 13:35:47 via Web

bom dia. Estou iniciando agora em programação estava com a mesma duvida citada a cima. Me ajudou também esta resposta. vlw

Responder
Antonio Caser
  • Posts no fórum: 10

20/10/2017, 22:37:19 via Web

Olá Leonardo Dias,

sou novato na área, estou "gatinhando" em desenvolvimento Android, sou aprendiz do aprendiz... rsrs ...

... sua explicação não ficou clara para mim, eu tenho 4 arquivos > MainActivity.java / content_main.xml / activity_main.xml / activity_main2.xml ...

... esse último foi criado justamente para o "button_ok" abrir essa tela ...

Por favor, em qual arquivo adicionar as referências e a ação ?

Obrigado e um forte abraço.

Responder
Rafael Amaral
  • Posts no fórum: 1

31/03/2018, 22:17:25 via Web

A mim ajudou de mais , Brigadão

Responder
Vicelos
  • Posts no fórum: 1

29/09/2019, 00:48:37 via Web

Muito obrigado, ajudou bastante.

Responder
publicons
  • Posts no fórum: 1

15/05/2020, 04:04:44 via Web

boa noite! como disse o nobre colega, também sou aprendiz de servente de aprendiz kkkk

fiz o meu primeiro "appzinho" que permite alterar um textbox que envia o texto digitado para um label. ele tem 2 botões, sendo um para abrir nova página/tela. aí que mora o problema. a tela antes de abrir apresenta a seguinte mensagem de erro no emulador android (estou usando o android studio pra aprender e usando a versão 15 onde 100% dos aparelhos e emuladores funcionam). eis a mensagem de erro:
"unfortunately, meu app has stopped OK"

Onde está o erro?
Alguém pode me ajudar?

os meus arquivos são os seguintes:
activity_main.xml - mainactivity.java - segundaActivity.java - strings.xml

o evento ONCLICK do botão que deveria abrir a nova tela/form é o seguinte:

""
public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Button botao = (Button) findViewById(R.id.btnPrincipal2);
    botao.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            startActivity(new Intent(getBaseContext(), SegundaActivity.class));
        }
    });

}

public void clique(View view) {
    EditText editText = (EditText) findViewById(R.id.editText);
    TextView textView = (TextView) findViewById(R.id.textView2);
    textView.setText(editText.getText());
}

private class SegundaActivity {
}

}
""

Já o conteúdo do arquivo SegundaActivity.java é o seguinte:

""
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;

import com.example.myapplication.R;

public class SegundaActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_segunda);
}

}
""

Aguardo uma interação, resposta, ou solução.
grato,
WdePaula.

Responder