Hubungan Antara File XML dan Java di Android Studio

Dalam artikel kali ini saya akan sedikit membahas mengenai hubungan antara XML dan Java di Android Studio. Perlu diketahui bahwa anda dapat merujuk sumber XML dalam kode Java. Lalu apa sebenarnya hubungan antara file XML dan Java di Android Studio?

XML dan Java di Android Studio

Untuk memahami hubungan antara file XML dengan Java bisa anda lihat pada gambar dibawah ini.

Illustrasi Xml dan Java di Android Studio
Klik gambar untuk memperjelas

Dibawah ini adalah penjelasan dari gambar tersebut.

1). Pertama, kita mulai ketika anda mengklik sebuah ikon aplikasi pada layar smartphone anda.

2). Ini akan membuka sebuah activity, kita sebut saja MainAcivity. Pada tahap ini sebenarnya banyak sekali kompleksitas kegiatan yang terjadi di dalam proses tersebut. Tetapi anda tidak perlu memusingkannya, karena proses ini ditangani secara otomatis oleh Android.

3). Bagian terpenting yang harus anda lihat adalah di dalam file MainActivity ini. Di dalam file tersebut terdapat sebuah method onCreate yang dapat dipanggil secara otomatis. Dibawah ini adalah contoh dari method onCreate tersebut.

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

Baca Juga: Mengenal Secara Singkat Kodingan Java di Android Studio

Dalam file tersebut juga terdapat setContentView dan Resource ID untuk file tata letak. Contoh kode Resource ID yang dipakai adalah R.layout.activity_main. Kode tersebut menyatakan bahwa tampilan konten Activity harus ditetapkan ke tata letak sebagaimana yang telah ditentukan oleh file XML utama. Lihatlah contoh kode dibawah ini.

setContentView(R.layout,activity_main);

Kode tersebut merupakan metode panggilan dan parameter input ID di dalam resource ini. Contoh kode diatas berguna untuk mengatur file layout mana yang akan anda gunakan. Dalam contoh diatas saya menggunakan file layout dengan nama “activity_main”.

4). Setelah anda mengatur tata letak yang akan digunakan untuk tampilan konten, maka perangkat android dapat melanjutkan dan mengurai file layout XML-nya. Maksud dari mengurai adalah android seperti akan membaca file tersebut dan mencoba menafsirkan apa saja tampilan yang ada di dalam file tersebut.

Perangkat android akan mulai membaca di bagian atas file. Kemudian mengembangkan objek java untuk mewakili tata letak dari tampilan tersebut. Kemudian ia pergi kembali ke baris berikutnya dari file layout XML, dan kemudian akan mengembangkan objek java lagi untuk mewakili tata letak dari tampilan tersebut. Proses ini akan terus berlanjut sampai tampilan yang terakhir.

5). Ketika mengembangkan sekelompok objek Java, maka android akan membuat sebuah tampilan hirarki dari objek java tersebut. Setelah kita memiliki tampilan hirarki dari objek java, maka kita dapat memanipulasi dan mengubah mereka disaat aplikasinya sedang berjalan. Sebuah Objek dalam Java juga memiliki method, sehingga kita dapat memanggil method-method tersebut dan mengubah keadaan internal mereka. Jadi misalnya kita dapat mengubah teks disaat aplikasinya sedang berjalan. Berinteraksi dengan semua objek ini disebut dengan Object Oriented Programming (Pemrograman Berorientasi Objek).

Ringkasan

Jadi untuk sekedar meringkas..

Dalam MainActivity kita akan memanggil setContentView untuk tata letak. Kemudian android akan membaca tata letak ini dan mengembangkan sekelompok objek Java. Objek Java ini membuat tampilan hirarki dari aplikasi tersebut. MainActivity berpegang pada tampilan hirarki ini dan kemudian saat anda berinteraksi dengan MainActivity dia dapat memperbarui objek ini.

Ok saya rasa artikel mengenai Hubungan antara File XML dan Java di Android Studio ini sudah cukup. Semoga artikel ini bisa menambah ilmu dan wawasan kita mengenai pemrograman android. Jika anda memiliki kritik dan saran mengenai artikel atau blog ini, bisa anda sampaikan  di kolom komentar atau di halaman Hubungi Saya. Gunakanlah nama yang sopan ketika anda ingin berkomentar.

Terima Kasih

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.