Anda di halaman 1dari 2

#BelajarNgoding Bedanya Pindah dari

Halaman Activity ke Fragment dan


Sebaliknya
Ketika membuat aplikasi berbasis android, saya seringkali membuat lebih dari 1
halaman (page) Activity. Dalam 1 Activity pun, saya terkadang menyertakan tab yang melibatkan
beberapa Fragment. Nah, dengan banyaknya halaman yang saya buat, tentunya dibutuhkan
“penghubung” antarhalaman agar pengguna dapat berpindah dari satu halaman menuju halaman
lainnya. Penghubung ini kita sebut sebagai Intent.
Agar lebih mudah dipahami, kita bisa bayangkan aplikasi android kita ini sebagai perumahan. Dalam
satu perumahan tentu memiliki beberapa rumah. Lalu, dalam satu rumah memiliki beberapa ruangan.
Nah, dalam pengembangan aplikasi android, rumah bisa kita ibaratkan sebagai Activity dan ruangan kita
ibaratkan sebagai Fragment. Activity yang tidak melibatkan Fragment kita anggap saja sebagai rumah
kosong yang belum memiliki ruangan-ruangan di dalamnya. Sebuah Fragment harus berada dalam suatu
Activity, sama seperti ruangan yang selalu berada dalam rumah.
Supaya kita bisa berpindah dari satu ruangan ke ruangan lainnya, dibutuhkan penghubung
berupa pintu yang dalam pengembangan aplikasi android kita sebut sebagai Intent. Bagaimana
penerapannya?

Hal pertama yang perlu kita ketahui, kita berada di mana saat ini? Apakah di ruangan (Fragment) atau
di rumah (Activity)? Setelah itu, kita tentukan..mau ke mana kita?

Singkatnya, dalam membuat intent, kita perlu mengetahui posisiSekarang dan posisiTujuan.

Intent intent = new Intent(posisiSekarang,posisiTujuan.class);


startActivity(intent);

Apabila posisiSekarang ada di sebuah Activity, maka cukup tuliskan this pada posisiSekarang, namun
apabila posisiSekarang ada di sebuah Fragment, maka tuliskan getActivity(). Sedangkan
untuk posisiTujuan, kita cukup menuliskan nama file .java dari halaman yang ingin kita tuju (cukup
namanya saja tanpa menuliskan “.java”).

Supaya lebih jelas, kita bahas satu-satu, okay?

1. Apabila kita berada di Activity dan ingin menuju Fragment


Misalnya, kita berada di rumah bernama MainActivity dan kita ingin menuju ke ruangan bernama
contohFragment. Kita berikan sebuah Button di MainActivity yang akan menerima respon kita dan
memberikan suatu aksi (pindah) setiap kali kita “klik”. Anggap saja Button ini sebagai sebuah engsel
pada pintu. Meskipun pintu dapat menjadi penghubung antar-ruangan, kita tetap membutuhkan engsel
untuk membuat pintu terbuka. Saat mendeklarasikan posisiSekarang kita cukup tuliskan this.

Intent intent = new Intent(this, contohFragment.class);


startActivity(intent);

Jangan lupa untuk memberi nama (ID) pada Button dan pastikan nama ID sudah sama dengan yang ada
di setOnItemClickListener(…){…}. Misalnya ID Button pada Layout activity_main.xml kita beri nama
btnRumah, maka pada MainActivity.java kita deklarasikan Intent dalam
btnRumah.setOnItemClickListener(…){…}.

2. Apabila kita berada di Fragment dan ingin menuju Activity


Kalau kita berada di ruangan bernama contohFragment dan kita ingin menuju ke rumah bernama
MainActivity, bagaimana? Tidak jauh berbeda dengan konsep sebelumnya. Kita berikan sebuah Button
di contohFragment yang akan menerima respon kita dan memberikan suatu aksi (pindah) setiap kali
kita “klik”. Perbedaannya, pada posisiSekarang kita perlu getActivity() karena kalau kita sedang dalam
posisi di ruangan tentu kita perlu ke pintu rumah dulu baru bisa menuju ke rumah yang lain.

Intent intent = new Intent(getActivity(),MainActivity.class);


startActivity(intent);

Sampai sini mungkin beberapa dari teman-teman ada yang kesal, “kenapa kok penjelasannya lebih
banyak daripada kodingannya? Huh!” Hehehe. Soalnya biar membiasakan untuk memahami konsepnya
dulu. Kalau konsepnya paham, insyaAllah kalau nanti mau mengembangan aplikasi berbasis android
yang arsitekturnya kompleks, teman-teman tetap bisa ngoding dengan cepat dan tidak mudah lupa
karena sudah paham.

Sekian untuk artikel kali ini, semoga bisa bermanfaat! ^^

Anda mungkin juga menyukai