Dipostingan ini Saya akan membahas melakukan berpindah ke activity lainnya dengan menggunakan Intent().anggap saja activity ini seperti halaman web yang saling
berhubungan, dimana biasanya ada sebuah variabel yang dikirimkan dari
activity yang pertama ke activity yang kedua. Variabel yang ingin
dikirim, disimpan dalam library Bundle() yang kemudian disisipkan melalui Intent() dari
activity pertama, mirip seperti format array. Di activity kedua,
tinggal di-ekstrak saja dan dipanggil sesuai dengan index-nya.
1. Studi kasusnya saya ambil yang sederhana saja, yaitu Data Mahasiswa. Ketika di klik tombol Proses, maka activity kedua akan menampilkan data-data yang diinputkan tadi.
Pilih Icon
Create Activity
Setelah itu kita edit file layoutnya terlebih dahulu, buka file main.xml.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RelativeLayout android:id="@+id/widget61"
android:layout_height="50px"
android:background="#000"
android:layout_x="0px"
android:layout_y="0px"
android:layout_width="match_parent">
<TextView android:id="@+id/widget62"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Latihan 1 Data Mahasiswa"
android:textSize="20sp"
android:textStyle="bold"
android:textColor="#fff"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true">
</TextView>
</RelativeLayout>
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/widget30"
android:text="Nama">
</TextView>
<EditText
android:id="@+id/nama_editText"
android:layout_width="252dp"
android:layout_height="wrap_content"
android:text=""
android:textSize="18sp" >
</EditText>
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/widget31"
android:text="Nim">
</TextView>
<EditText
android:id="@+id/Nim_editText"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:text=""
android:textSize="18sp" >
</EditText>
<Button
android:id="@+id/Proses_btn"
android:layout_width="248dp"
android:layout_height="wrap_content"
android:text="Proses" />
<Button
android:id="@+id/reset_btn"
android:layout_width="248dp"
android:layout_height="wrap_content"
android:text="Keluar" />
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RelativeLayout android:id="@+id/widget61"
android:layout_height="50px"
android:background="#000"
android:layout_x="0px"
android:layout_y="0px"
android:layout_width="match_parent">
<TextView android:id="@+id/widget62"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Latihan 1 Data Mahasiswa"
android:textSize="20sp"
android:textStyle="bold"
android:textColor="#fff"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true">
</TextView>
</RelativeLayout>
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/widget30"
android:text="Nama">
</TextView>
<EditText
android:id="@+id/nama_editText"
android:layout_width="252dp"
android:layout_height="wrap_content"
android:text=""
android:textSize="18sp" >
</EditText>
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/widget31"
android:text="Nim">
</TextView>
<EditText
android:id="@+id/Nim_editText"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:text=""
android:textSize="18sp" >
</EditText>
<Button
android:id="@+id/Proses_btn"
android:layout_width="248dp"
android:layout_height="wrap_content"
android:text="Proses" />
<Button
android:id="@+id/reset_btn"
android:layout_width="248dp"
android:layout_height="wrap_content"
android:text="Keluar" />
</LinearLayout>
Berikut hasil dari main.xml
Buat sebuah layout baru dengan nama tampil.xml, file ini merupakan layout dari activity yang kedua.
caranya Klik kanan pada layout - New lalu pilih android xml kemudian klik finish
Masukan Scrip dari tampil.xml dibawah ini
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hasil Output"
android:textSize="@dimen/activity_horizontal_margin" />
<TextView
android:id="@+id/nama_textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:textSize="15sp" >
</TextView>
<TextView
android:id="@+id/nim_textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:textSize="15sp" >
</TextView>
<Button
android:id="@+id/hapus_btn"
android:layout_width="123dp"
android:layout_height="wrap_content"
android:text="Reset" />
<Button
android:id="@+id/kembali_btn"
android:layout_width="122dp"
android:layout_height="wrap_content"
android:text="Kembali" />
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hasil Output"
android:textSize="@dimen/activity_horizontal_margin" />
<TextView
android:id="@+id/nama_textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:textSize="15sp" >
</TextView>
<TextView
android:id="@+id/nim_textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:textSize="15sp" >
</TextView>
<Button
android:id="@+id/hapus_btn"
android:layout_width="123dp"
android:layout_height="wrap_content"
android:text="Reset" />
<Button
android:id="@+id/kembali_btn"
android:layout_width="122dp"
android:layout_height="wrap_content"
android:text="Kembali" />
</LinearLayout>
Berikut Hasil Dari Tampil.xml
Kita lanjutkan ke file activity yang pertama, buka dan edit file Inputdata.java masukan sourcodenya dibawah ini
package com.example.inputdata;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class Inputdata extends Activity {
String var_nama,var_nim;
EditText nama, nim;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
nama = (EditText) findViewById(R.id.nama_editText);
nim = (EditText) findViewById(R.id.Nim_editText);
Button submit = (Button) findViewById(R.id.Proses_btn);
submit.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
var_nama = nama.getText().toString();
var_nim = nim.getText().toString();
Intent i = null;
i = new Intent(Inputdata.this, tampilvariabel.class);
Bundle b = new Bundle();
b.putString("parse_nama", var_nama);
b.putString("parse_nim", var_nim);
i.putExtras(b);
startActivity(i);
}
});
}
}
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class Inputdata extends Activity {
String var_nama,var_nim;
EditText nama, nim;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
nama = (EditText) findViewById(R.id.nama_editText);
nim = (EditText) findViewById(R.id.Nim_editText);
Button submit = (Button) findViewById(R.id.Proses_btn);
submit.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
var_nama = nama.getText().toString();
var_nim = nim.getText().toString();
Intent i = null;
i = new Intent(Inputdata.this, tampilvariabel.class);
Bundle b = new Bundle();
b.putString("parse_nama", var_nama);
b.putString("parse_nim", var_nim);
i.putExtras(b);
startActivity(i);
}
});
}
}
Penjelasan : Karena variabelnya berupa teks, maka saya gunakan putString().
Jika ingin menggunakan tipe data yang lainnya juga bisa . Variabel
yang sudah dimasukkan ke dalam array ,
dipaketkan menjadi satu dengan Intent().
Buat sebuah activity baru caranya klik kanan pada package com.example.inputdata lalu pilih class dan berikan nama tampilvariabel
Berikut Sourcode tampilvariabel.java
package com.example.inputdata;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class tampilvariabel extends Activity {
TextView nama,nim;
String get_nama,get_nim;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tampil);
nama = (TextView) findViewById(R.id.nama_textView);
nim = (TextView) findViewById(R.id.nim_textView);
Bundle b = getIntent().getExtras();
get_nama = b.getString("parse_nama");
get_nim = b.getString("parse_nim");
nama.setText("Nama : "+get_nama);
nim.setText("nim : "+get_nim);
Button reset = (Button) findViewById(R.id.hapus_btn);
reset.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
nama.setText("");
nim.setText("");
}
});
Button kembali = (Button) findViewById(R.id.kembali_btn);
kembali.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent i = null;
i = new Intent(tampilvariabel.this, Inputdata.class);
startActivity(i);
}
});
}
}
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class tampilvariabel extends Activity {
TextView nama,nim;
String get_nama,get_nim;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tampil);
nama = (TextView) findViewById(R.id.nama_textView);
nim = (TextView) findViewById(R.id.nim_textView);
Bundle b = getIntent().getExtras();
get_nama = b.getString("parse_nama");
get_nim = b.getString("parse_nim");
nama.setText("Nama : "+get_nama);
nim.setText("nim : "+get_nim);
Button reset = (Button) findViewById(R.id.hapus_btn);
reset.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
nama.setText("");
nim.setText("");
}
});
Button kembali = (Button) findViewById(R.id.kembali_btn);
kembali.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent i = null;
i = new Intent(tampilvariabel.this, Inputdata.class);
startActivity(i);
}
});
}
}
Setelah sampai di activity yang kedua, variabel-variabel tersebut diekstrak. Bundle b = getIntent().getExtras();. Yang kemudian diambil berdasarkan indexnya,
Jalankan Aplikasi melalui emulator (Ctrl+f11), Maka Hasilnya Seperti Dibawah Ini
0 komentar:
Post a Comment