Redes Sociais
 Telegram  YouTube
Como passar dados entre Activities Java
21 de dezembro de 2019

Nesse tutorial vou descrever Como passar dados entre Activities Java para que você possa assim utilizar dados gerados em uma activity em outra.

Primeiramente vamos utilizar o projeto do tutorial Como criar uma nova Activity em Java e fazer algumas modificações nele para enviar uma String e um Inteiro da MainActivity para a NovaActivity sendo o nome e idade.

Logo depois de estar com o projeto aberto você deve ir no layout da sua activity_main e fazer as seguintes modificações para que seu código fique de acordo com o seguinte.

activity_main

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_margin="20dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Nome"/>
        <EditText
            android:id="@+id/etNome"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Idade"/>
        <EditText
            android:id="@+id/etIdade"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="number"/>
        <Button
            android:id="@+id/btnClick"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="Nova Activity" />
    </LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

Logo depois de modificar a activity_main vamos modificar o layout activity_nova para receber o valor enviado.

activity_nova

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".NovaActivity">
    <TextView
        android:id="@+id/tvResp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Nova Activity."
        android:textSize="40dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>




Agora vamos modificar o código da MainActivity para que fique como o seguinte.

MainActivity

package br.com.uware.novaactivity;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button btnClick = findViewById(R.id.btnClick);
        final EditText etNome = findViewById(R.id.etNome);
        final EditText etIdade = findViewById(R.id.etIdade);
        btnClick.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(getApplicationContext(), NovaActivity.class);
                intent.putExtra("nome", etNome.getText().toString());
                intent.putExtra("idade", Integer.parseInt(etIdade.getText().toString()));
                startActivity(intent);
            }
        });
    }
}

Depois de ter feito as modificações no MainActivity para enviar os dados você deve modificar a NovaActivity.

Então na NovaActivity você deve receber os dados e imprimi-los na tela.

Vamos agora deixar assim o nosso código da NovaActivity.

NovaActivity

package br.com.uware.novaactivity;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
public class NovaActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_nova);
        TextView tvResp = findViewById(R.id.tvResp);
        Intent intent = getIntent();
        String nome = intent.getStringExtra("nome");
        Integer idade = intent.getIntExtra("idade", 0);
        tvResp.setText("Nome: "+nome+"\nIdade: "+idade);
    }
}

Agora vamos compilar e executar o nosso projeto para ver o funcionamento dele.

Enfim espero poder ter ajudado com mais este tutorial sobre Como passar dados entre Activities Java.

Visite e siga nosso canal no YouTube para ajudar no crescimento do site.





Autor: Rodrigo Leutz

Desenvolvedor Web e Android ( Kotlin e Java )


Começando a programar na linguagem Kotlin – Parte 5

Nesse tutorial Começando a programar na linguagem Kotlin – Parte 5 vamos ver strings e intervalos para que assim seja possível entrar em laços.[...]

7 de fevereiro de 2020

Vídeo 11: Pegar endereço com o CEP Kotlin

Nesse Vídeo 11: Pegar endereço com o CEP Kotlin vou descrever como fazer a parte da programação assim você vai imprimir o endereço na tela.[...]

4 de janeiro de 2020

Vídeo 10: Pegar endereço com o CEP Kotlin

Nesse Vídeo 10: Pegar endereço com o CEP Kotlin vou descrever como fazer o layout do aplicativo para assim poder fazer a programação. Vou[...]

4 de janeiro de 2020