Memanggil Fungsi di Activity dari Fragment [Android]

Developer Android semakin berkembang seiring meningkatnya popularitas Android di pasaran. Banyak pendatang baru (developer Android baru) yang mulai menjajakan aplikasi yang dibuatnya di pasaran lokal maupun internasional.

Membuat [kamus kata=”aplikasi”] Android itu gampang-gampang susah. Jika programmer terbiasa menggunakan pendekatan prosedural atau Procedural Oriented Programming (POP) maka sedikit atau banyak akan mendapati kendala manakala ia harus bekerja dengan pendekatan objek atau Object Oriented Programming (OOP). Hal ini adalah masalah yang dasar karena pemrograman java merupakan bahasa yang menekankan pada pendekatan object.

Salah satu contoh masalah adalah ketika mau memanggil fungsi antar class tidak bisa dilakukan secara langsung tanpa mendeklarasikan sebuah objek yang diisi dengan class yang mau dipanggil fungsinya. Contoh sederhananya begini:

Seorang developer ingin memanggil fungsi yang berada di dalam MainActivity.java yang dideklarasikan pada method onCreate(). Maka ia perlu membuat pendeklarasian dan asigmen pada class MainActivity.java tersebut di dalam class yang mau digunakan untuk memanggil fungsi tersebut.

Contoh realnya seperti ini:

Seorang developer membuat aplikasi Android dengan nama activity default MainActivity.java. Di dalam activity tersebut ia membuat fungsi untuk menyembunyikan menu login setelah proses login berhasil.

public void hideMenu(){
...
Menuitem login= menu.getItemById(R.id.menu_login);
login.setVisible(false);
}

Ia memiliki fragment login.java untuk menampilkan dan memroses user login. Dari fragment tersebut, developer ingin memanggil fungsi yang dibuatnya pada activity maka ia harus mendeklarasikan MainActivity dalam bentuk variabel di dalam fragment login sebelum method onCreate(); agar bisa digunakan secara global di dalam fragment tersebut. Cara membuat deklarasi sebagai berikut:

MainActivity activity;

Setelah MainActivity dideklarasikan, selanjutnya mengisi (asign) variabel tersebut dengan MainActivity. Cara ini bisa dilakukan di dalam method onCreate atau langsung di dalam fungsi tipe View.
activity = (MainActivity)getActivity();

Jika pengisian [kamus kata=”variabel”] activity itu dilakukan di dalam method onCreate maka developer bisa memanggil fungsi activity itu dari mana saja di dalam fragment tersebut. Cara memanggilnya begini:
activity.hideMenu();

Bagaimana, apa masih bingung cara memanggil fungsi di activity dari dalam fragment? Silahkan tanyakan saja via komentar di bawah atau melalui email [email protected]. Amd

[tahukah kata=”deklarasi”]

1 thought on “Memanggil Fungsi di Activity dari Fragment [Android]”

  1. saya mau menanyakan tentang fragment dan java class biasa

    disini kasusu nya yang saya mau tanyakan ke[pada agan tentang …?…
    bagaiman cara menampilkanhasil java class yang biasa tapi di fragment
    posisinya fragment hanya tempat wadah saja sebagai frame

    Reply

Leave a Comment