Belajar 3 “Memahami Penggunaan Intent” Part 2

Pada materi sebelumnya kita telah belajar membuat halaman atau Acitivity. Bagi yang belum jelas atau belum baca tentang Activity silahkan merujuk ke tutorial sebelumnya.

Kita lanjutkan materi kita tentang “Intent”. Menurut situs Voggela,16 Mei 2017. Berikut penjelasanya dalam bahasa inggris.

Intents are asynchronous messages which allow application components to request functionality from other Android components. Intents allow you to interact with components from the same applications as well as with components contributed by other applications. For example, an activity can start an external activity for taking a picture

Intent ini biasanya digunakan untuk interaksi antar komponen pada sistem operasi Android. Sebagai contoh activity dapat membuka activity baru untuk mengambil gambar dan mengembalikan hasil ke intente sebelumnya.

Langsung saja kita akan praktik untuk penggunaan dari Intent ini. Kita akan membuat sebuah aplikasi yang memiliki fungsi untuk memutar audio berdasarkan nilai yang dikirim melalui intent ini.

Pada project sebelumnya kita memiliki 2 Activitiy yaitu MainActivity dan Main2Activity. Kedua Activity tersebut akan kita modifikasi menjadi aplikasi pemutar audio.

Perubahan Pada MainActivity

  1. Membuat 3 Buah Button (layout main activity)
  2. Mencari Id dari Button (findViewById(R.id.idbutton)
  3. Menyiapkan sebuah Variabel Tipe Array untuk menampung Audio
  4. Memberi aksi ketika Button di Klik ( setOnClickListener
  5. Mengirim nilai ke Main2Activity menggunakan putExtra()
  6. Membuaka Activity Main2 dengan startActivity()

Perubahan Pada Main2Activity

  1. Membuat 2 Button untuk Play dan Stop
  2. Mencari Id dari 2 Button
  3. Menerima Nilai yang dikirim dari MainActivity

4. Run Aplikasi ke HandPhone dengan ADB WIFI

Langsung saja kita praktikan tahapan demi tahapan.

  1. Buka Layout main_activity.xml dan ketikan kode seperti dibawah ini. Dimana kita membuat 2 Buah button yang textnya mengambil dari resource res>string.xml.

Dan berikut untuk string.xml rubah seperti ini.

2. Menghubungkan Button pada MainActivity dengan main_activity.xml

Penjelasan :

a. Button btnAudio1 => Button ini nama class dari Android,kita menulis Button karena pada layout main_activity.xml kita membuat Button. Ini juga berlaku bagi view yang lain. Jika di main_activity.xml kita membuat Editext maka pada class Java di Main_activity kita juga membuat dengan nama Edittext.

b. btnAudio1 => ini merupakan object java jadi untuk ini penamaan bebas. Namun agar koding lebih rapi gunakan nama object yang mudah terbaca.

Contoh Benar untuk nama Object:
mAudio1
btnAudio1,dll
Contoh Yang Keliru untuk penamaan Object.
a
addf
ini_tombol_*a

c. Casting Button

untuk melakukan casting button kita menggunakan perintah sebagai berikut. Yang perlu diperhatikan adalah bagian R.id.audio1. Ini merupakan id pada Button yang ada di main_activity.xml. Jika kita menulis nama id yang tidak ada pada XML maka saat RUN aplikasi kita akan mendapatkan error null pointer.

btnAudio1=(Button)findViewById(R.id.audio1);

3. Memberi aksi pada Button

Sampai saat ini jika kita run aplikasi maka akan sukses tanpa error namun pada bagian button saat diklik belum memilik akses. Untuk itulah kita akan memberi aksi pada Button tersebut. Caranya adalah dengan impelements interfaces OnClickListener. Tambahkan sebagai berikut setelah nama Activity.

Saat impelement OnclickListener ini program atau MainActivity akan merah. Jangan panik. Klik pada tulisan atau baris onClickListener. Selanjutnya tekan alt+enter. Nanti akan muncul sebuah dialog dimana kita disuruh untuk melakukan impement sebuah method bernama onClick(View view). Langsung saja tekan enter atau ok.

Jika langkah diatas benar maka kita sudah dapat kode seperti ini.

4. Memberi aksi pada masing masing tombol

Penjelasan :

a. btnAudio1.setOnClickListener(this); => karena pada bagian 3 kita menambahkan impements onClickListener maka sekarang agar button berfungsi saat di klik kita kita harus mengeset listener dengan perintah setOnClickListener. coba lihat btnAudio3 karena kita tidak mengeset setOnClickListener tapi langsung membuat aksi didalamnya. Ini cara koding yang beda tapi fungsinya sama.

b. dibagian onClick method kita menerapkan if(view==btnAudio1){ didalam sinilah kita buat aksi apa yang akan dilakukan oleh btnAudio1 berbeda dengan btnAudio3 yang langsung didepanya.

c. Di masing-masing Button tersebut kita telah membuat perintah untuk membuka halaman lain atau Activity baru dimana activity tersebut bernama Main2Activity.

d. Untuk membuka activity kita harus membuat Intent terlebih dahulu. Dimana perintah untuk membuat Intent adalah sebagia berikut:

Intent intent=new Intent(MainActivity.this,Main2Activity.class);

Intent => kelas Intent seperti kelas Button

intent => nama object

new Intent(asalActivity,TujuanActivity/class) => perintah ini untuk menentukan asal class dan tujuan class yang akan dibuka. Untuk tujuan sendiri kita bisa menggunakan beberapa pilihan.

d.1. Menyebut langsung nama class (MainActivity.this)

d.2. Menggunakan getBaseContext() | getApplicationContext();

Sampai saat ini silahkan di RUN, maka ketika Button diklik sudah bisa berpindah ke Main2Activity.

A single golf clap? Or a long standing ovation?

By clapping more or less, you can signal to us which stories really stand out.