(Tutorial Android) Menghubungkan antar Activity dengan Intent (Part 1)


Activity merupakan container untuk User Interface (UI) yang dapat berinteraksi dengan pengguna. Dalam sebuah aplikasi biasanya terdiri dari beberapa activity yang menjalankan kegiatan tertentu. Sebuah activity dapat berhubungan dengan activity lainnya dengan menggunakan Intent. Intent adalah fasilitas yang memungkinkan satu activity dapat berkomunikasi dengan activity yang lain.

Untuk lebih memahami cara kerja dari Intent, mari kita simak tutorial berikut ini :

1. Pertama, buat Project Baru di Android Studio.

2. Buat dua activity masing-masing dengan nama MainActivity dan SecondActivity. Karena kita akan mencoba menghubungkan antara dua buah activity tersebut.

3. Selanjutnya buat sebuah layout dengan nama activity_main kemudian desain sebagai berikut :


4. Buat sebuah layout lagi dengan nama activity_second yang hanya berisi satu komponen textview sebagai berikut :

5. Buat sebuah method di MainActivity yang digunakan untuk memanggil SecondActivity. Data yang akan dikirim diambil dari field yang kita isi.

private void startSecondAct(String sometext) {
Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra(TAG_MESSAGE, sometext);
startActivity(intent);
}


6. Setelah itu di SecondActivity, tampilkan hasil kiriman data dari MainActivity di dalam onCreate() sebagai berikut :

Intent in = getIntent();
String data = in.getStringExtra(MainActivity.TAG_MESSAGE);
txtShow.setText(data);


7. Jangan lupa untuk mendaftarkan kedua activity tersebut di AndroidManifest

8. Lengkapi kelas MainActivity dengan source code di bawah ini :

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

/**
* Created by Wim on 29-Jan-16.
*/
public class MainActivity extends AppCompatActivity implements View.OnClickListener{

public static final String TAG_MESSAGE = "data.MainActivity";

private EditText txtInput;
private Button btnSend;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

txtInput = (EditText) findViewById(R.id.txtInputData);
btnSend = (Button) findViewById(R.id.btnSend);

btnSend.setOnClickListener(this);
}

private void startSecondAct(String sometext) {
Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra(TAG_MESSAGE, sometext);
startActivity(intent);
}

@Override
public void onClick(View view) {
if(view == btnSend){
startSecondAct(txtInput.getText().toString());
}
}
}


9. Lengkapi kelas SecondActivity dengan source code di bawah ini :

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;

/**
* Created by Wim on 29-Jan-16.
*/
public class SecondActivity extends AppCompatActivity {

private TextView txtShow;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);

txtShow = (TextView) findViewById(R.id.txtShow);

Intent in = getIntent();
String data = in.getStringExtra(MainActivity.TAG_MESSAGE);
txtShow.setText(data);
}
}


10. Jalankan dan demo hasilnya seperti ini :

 MainActivity

SecondActivity 


Sekian dan Terima Kasih, nantikan tutorial berikutnya.

Happy Coding :)

Post a Comment

Previous Post Next Post