BAB 4 ACTIVITY
C. Latihan
1. Buat project dengan nama AndroidLifeCycle
2. Pada project Android secara otomatis akan dibuatkan Activity utama dengan nama MainActivity yang didefinisikan dalam MainActivity.java serta activity_main.xml untuk pengaturan layoutnya. Selain itu, pada Activity dibuatkan juga default callback onCreate().
3. Untuk memahami lebih lanjut mengenai lifecycle pada Android, tambahkan dua callback onStart() dan juga onStop() dengan override. Sehingga hasil akhir menjadi seperti pada gambar berikut.
Tips: Untuk melakukan override gunakan shortcut Ctrl + o kemudian pilih nama method yang akan di-override. Atau
PEMROGRAMAN APLIKASI MOBILE 47 dapat langsung mengetikkan nama method yang akan di-override kemudian dilanjutkan dengan Ctrl + space dan Enter. Contoh: onSt Ctrl + space akan muncul suggestion onStart()
Catatan: Toast digunakan untuk menampilkan pesan pop up pada Android. Toast.LENGTH_SHORT mengatur berapa lama pesan pop up akan ditampilkan. Secara umum struktur code Toast sebagai berikut.
Toast.makeText(this, "This is a message", Toast.LENGTH_SHORT).show();
4. Jalankan kode tersebut.
5. Perhatikan tampilan pop up yang keluar ketika aplikasi dijalankan.
6. Lengkapi kode seperti gambar berikut kemudian jalankan kembali.
48 PEMROGRAMAN APLIKASI MOBILE
PEMROGRAMAN APLIKASI MOBILE 49 D. Cara Membuat Activity Sederhana
Pada Latihan sebelumnya telah dipelajari bagaimana daur hidup aplikasi Android. Pada Activity terdapat dua buah file, yaitu .java dan .xml. Untuk menghubungkannya, pengguna dapat mengikuti langkah-langkah berikut untuk mempelajarinya.
1. Pada project ProjectPertamaku tambahkan Activity (Empty Activity), beri nama SimpleActivity. Caranya dengan klik kanan folder yang terdapat pada folder java → new → activity → Empty Activity seperti gambar berikut ini
Gambar 4.6 Membuat Aktivitas Baru
2. Selanjutnya buat Activity dengan nama SimpleActivity, dan jangan lupa klik Launcher Activity, hal ini digunakan untuk menandakan bahwa activity pada tag ini merupakan activity yang pertama kali dibuka.
50 PEMROGRAMAN APLIKASI MOBILE
Gambar 4.7 Configure Activity
3. Setelah selesai maka akan muncul 2 macam file yaitu SimpleActivity.java yang terdapat pada folder Java, dan activity_simple.xml yang terdapat pada folder res yang akan digunakan untuk mendesain tampilan, lalu buka activity_simple.xml maka akan terdapat 2 macam tampilan yaitu design dan text. Design digunakan untuk drag and drop komponen serta melengkapi atributnya sedangkan Text tampilan dalam bentuk xml nya. Berikut adalah tampilan pada activity_simple.xml .
PEMROGRAMAN APLIKASI MOBILE 51 Gambar 4.8 Tampilan Desain activity_simple.xml
4. Pada ComponenTree jika default layer adalah constrain layout maka ubah menjadi linear layout dengan cara klik kanan pada ConstrainLayout → convertView → pilih LinearLayout kemudian ubah orientasi LinearLayout dari horizontal menjadi vertical dengan cara klik kanan LinearLayout → convert orientation to vertikal
5. Selanjutnya Drag and Drop 3 komponen 1) PlaintText 2) Button dan 3) Text View ke dalam layar utama android, dan pastikan Tampilan Componen Tree seperti pada gambar berikut
52 PEMROGRAMAN APLIKASI MOBILE
Gambar 4.9 Tampilan EditText dan Button
6. Selanjutnya mengubah Id dan text pada properties hal ini berfungsi untuk mempermudah penamaan, bisa dilakukan dengan cara klik komponen yang akan diubah kemudian edit di properties
Id Edit_text diubah menjadi input_name dan text name diganti “masukkan nama”
Id Button diubah menjadi button_submit dan text name diganti “SUBMIT”
Id TextView diubah menjadi output_name dan text name dihilangkan
Berikut ini adalah contoh pengubahan pada komponen Plain Text
PEMROGRAMAN APLIKASI MOBILE 53 Gambar 4.10 Mengubah Nama Id
Gambar 4.11 Mengubah Text
54 PEMROGRAMAN APLIKASI MOBILE
7. Langkah selanjutnya adalah coding pada file SimpleActivity yang terletak di folder java, ada 3 hal yang perlu ditambahkan pada file .java yaitu :
a. Pendeklarasian Atribut
b. Pengenalan Komponen, disesuaikan dengan penamaan id pada komponen
c. Even Handling, action yang akan terjadi jika button di klik
public class SimpleActivity extends AppCompatActivity { //1. Pendeklarasian Atribut
private EditText inputName;
private TextView outputText;
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
setContentView(R.layout.activity_simple);
//2. Pengenalan Komponen
inputName = findViewById(R.id.input_name);
outputText = findViewById(R.id.output_name);
button = findViewById(R.id.button_submit);
}
}
Untuk even handling, perlu ditambahkan Layout pada Android menggunakan struktur xml. Setiap komponen mempunyai atribut-atribut dengan format key dan value.
Atribut android:id digunakan untuk memberikan identitas pada suatu komponen Android.
8. Buka file activity_simple.xml pada bagian text, lalu pada tag button tambahkan android:onClick="handleSubmit"
kemudian pindahkan cursor pada baris yang memuat kode
“handleSubmit” kemudian tekan tombol shortcut Alt + Enter dan pilih Create 'handleSubmit(View view)' in 'SimpleActivity'. Android Studio akan menambahkan secara otomatis method pada file SimpleActivity. Proses ini digunakan untuk menambahkan logika pada Activity ketika tombol ditekan.
PEMROGRAMAN APLIKASI MOBILE 55 Gambar 4.12 Tampilan Text XML
Selanjutnya pilih SimpleActivity kemudian klik OK
Gambar 4.13 Tampilan Membuat Even Handling
56 PEMROGRAMAN APLIKASI MOBILE
9. Tambahkan kode berikut pada method handleSubmit(View view) untuk menampilkan nilai nama dari EditText yang ditampilkan ke TextView ketika Button ditekan.
//even handling
public void handleSubmit(View view) {
String name = inputName.getText().toString();
outputText.setText("Hello " + name);
}
10. Kemudian Jalankan program, maka akan muncul tampilan seperti dibawah ini
Gambar 4.14 Tampilan Program Execute
11. Terdapat cara lain yang bisa digunakan untuk even handling, yaitu dengan mengetikkan button.setOnClickListener lalu klik new didalam tanda
PEMROGRAMAN APLIKASI MOBILE 57 kurung kemudian akan muncul pilihan dan pilih onClick (view view) maka otomatis akan dibuatkan methode seperti dibawah ini
button.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View view) {
String name = inputName.getText().toString();
outputText.setText("Hello " + name);
} });
SOAL
1. Bagaimana membuat tulisan “Masukkan nama” pada project diatas menjadi transparant ?
2. Buatlah Activity sederhana yang dapat digunakan untuk memasukkan dan menampilkan data-data mahasiswa seperti dibawah ini :
Nim : Nama : Kelas : IPK :
58 PEMROGRAMAN APLIKASI MOBILE
PEMROGRAMAN APLIKASI MOBILE 59 BAB 5
LAYOUT
A. LAYOUT
Secara bahasa, layout adalah tata letak. Menurut Surianto Rustan, layout adalah tata letak dari komponen-komponen desain terhadap suatu bidang dalam media tertentu untuk mendukung konsep atau pesan yang dibuat. (Rustan, Suriyanto 2001)
Secara sederhana, definisi layout adalah desain tata letak, sedangkan arti dari layout adalah suatu susunan, rancangan, atau tata letak ruang dari sebuah elemen yang sengaja didesain untuk bisa ditempatkan dalam suatu bidang yang telah di desain sebelumnya. (Rheny, Silvia, 2022)
Desain layout mencakup pengaturan teks, gambar, dan elemen visual dalam kotak untuk menyampaikan pesan tertentu. Fungsi dan tujuan layout adalah untuk mempermudah komunikasi antara pengguna dengan aplikasi, atau membuat interface yang bersifat user friendly.
Terdapat 3 jenis layout utama pada android studio yaitu Linear Layout, Realtife Layout dan Constraint Layout. Akan tetapi default layout pada android studio adalah constraint layout.
B. LINEAR LAYOUT
LinearLayout adalah kelompok tampilan yang menampilkan semua komponen dalam satu arah, yaitu vertikal maupun horizontal. Semua komponen LinearLayout akan disejajarkan satu sama lain, sehingga orientasi vertikal hanya akan memiliki satu turunan per baris, dan orientasi horizontal hanya akan setinggi satu baris.
Linear layout adalah salah satu layout termudah untuk mendesain sebuah aplikasi, karena pengguna hanya tinggal drag and drop komponen, dan secara otomatis komponen akan tersusun secara vertikal maupun secara horizontal.
60 PEMROGRAMAN APLIKASI MOBILE C. RELATIF LAYOUT
RelativeLayout adalah tata letak tampilan yang dapat menampilkan tampilan turunan di posisi sesuai kehendak user.
Posisi setiap komponen yang dipilih dapat ditentukan sebagai posisi relatif terhadap elemen lain yang setara, sebagai contoh komponen diletakkan di sebelah kiri atau di bawah tampilan lain atau di posisi relatif terhadap RelativeLayout induk (seperti sejajar dengan komponen sebelumnya bagian bawah, kiri, atau tengah). (android developers 2022)
D. CONSTRAINT LAYOUT
ConstraintLayout memungkinkan pengguna untuk membuat tata letak yang kompleks dan besar dengan hierarki tampilan datar (tidak ada kelompok tampilan bertingkat). ConstraintLayout serupa dengan RelativeLayout yang mana semua tampilannya diletakkan sesuai kehendak user, asal tetap memperhatikan tata letak induk, ConstrainLayout lebih fleksibel daripada RelativeLayout dan lebih mudah digunakan dengan Layout Editor Android Studio. (android developers 2022)
Dengan menggunakan constraint Layout, pengguna dapat mendesain komponen secara flexible, constrain layout juga menawarkan kecanggihan yang tidak dimiliki linear layout maupun relatif layout.
Fitur Visual Layout Editor menawarkan semua kecanggihan ConstrainLayout, karena API layout dan Layout Editor dibuat khusus untuk digunakan bersama-sama.
E. Contoh Membuat Layout Menggunakan Linear Layout 1. Buatlah sebuah project baru yang bernama LinearLayout.
Kemudian bukalah file activity_main.xml yang terletak pada folder Res. Sehingga muncul tampilan seperti dibawah ini
PEMROGRAMAN APLIKASI MOBILE 61 Gambar 5.1 ActivityMain.xml
2. Bisa dilihat bahwa default layout adalah constraint layout, maka lakukanlah konversi dari constraint layout ke linear layout dengan cara klik kanan constrain layout → convert view → linear layout
Gambar 5.2 Convert View Ke Linear Layout
3. Selanjutnya ubah orientation linear layout dari vertikal layout menjadi horizontal layout
62 PEMROGRAMAN APLIKASI MOBILE
Gambar 5.3 Ubah Orientasi Linear Layout
4. Selanjutnya drag and drop Textview, dan 3 button ke dalam layout, ubah warna button menjadi warna biru, sehingga jika menggunakan vertical linear layout hasil keluaran seperti yang ditunjukkan dibawah ini
PEMROGRAMAN APLIKASI MOBILE 63 Gambar 5.4 Tampilan Desain Layout
5. Pada bagian atribut, ubah layout_width dan layout_height dari match_parent menjadi wrap content, lalu buatlah kesimpulan apakah perbedaan match_parent dengan wrap_content ?
Gambar 5.5 Atribut Layout
F. Contoh Membuat Layout Menggunakan Relatif Layout
4. Untuk membuat contoh relatif layout, ubah layout menjadi relatif layout, drag and drop 2 button
5. Ganti text botton satu menjadi “TOP” dan button 2 menjadi
“Bottom”
6. Ubah ke mode split di pojok kanan atas, sesuaikan dengan kodingan dibawah ini
64 PEMROGRAMAN APLIKASI MOBILE
Gambar 5.6 Contoh Relatif Layout 1
7. Pada button pertama dapat dilihat bahwa button mempunyaiproperties
android:layout_alignParentStart = "true"
android:layout_alignParentLeft = "true"
android:layout_alignParentTop = "true"
8. Dengan konfigurasi properties seperti diatas, sebuah item akan diposisikan disebelah kiri atas, sedangkan pada button 2 mempunyai properties
android:layout_alignParentStart = "true"
android:layout_alignParentLeft = "true"
android:layout_alignParentBottom = "true"
9. Dengan konfigurasi properties seperti diatas, sebuah item akan diposisikan disebelah kiri bawah
10. Untuk lebih memahami relatif layout, tambahkan dua button baru ke dalam layout, lalu ubah ke text mode, sesuaikan dengan kodingan dibawah ini
PEMROGRAMAN APLIKASI MOBILE 65 Gambar 5. 7 Contoh Relatif Layout 2
11. Terlihat bahwa pada button 3 terdapat konfigurasi properties sebagai berikut
android:layout_alignParentStart = "true"
android:layout_alignParentLeft = "true"
android:layout_below = "@id/button"
ini berarti bahwa sesuai konfigurasi diatas, button 3 akan diletakkan di sebelah kiri atas dan dibawah button 1
12. Sedangkan pada button 4 terdapat konfigurasi properties sebagai berikut
android:layout_alignParentStart = "true"
android:layout_alignParentLeft = "true"
android:layout_below = "@id/button"
ini berarti bahwa sesuai konfigurasi diatas, button 4 akan diletakkan di sebelah kanan bawah dan diatas button 2
66 PEMROGRAMAN APLIKASI MOBILE
PEMROGRAMAN APLIKASI MOBILE 67 BAB 6
INTERAKSI ANTAR ACTIVITY (INTENT)
A. INTENT
Intent adalah sebuah jembatan penghubung yang digunakan untuk perpindahan halaman antar activity dalam aplikasi. Suatu activity dapat berpindah dari satu activity ke activity lain dengan membawa data maupun tidak, bahkan intent dapat membuka aplikasi lain seperti Gmail, GoogleMap, dll
Sebagai contoh, dalam sebuah halaman activity terdapat sebuah button yang mana ketika user menekan tombol tersebut, maka user bisa berpindah ke halaman activity lain, dapat membuka peta atau dapat mengakses internal device seperti kamera.
startActivity() adalah sebuah method yang digunakan untuk memulai sebuah activity lain. Untuk dapat memanggil methode tersebut maka pengguna harus membuat object terlebih dahulu dari class android.content.intent.
Secara umum Intent dibagi menjadi 2, yaitu :
1. Explicit Intent berfungsi untuk mengaktifkan activity yang dibuat oleh user dalam satu aplikasi yang sama. Misalnya seperti : Berpindah Activity.
2. Implicit Intent berfungsi untuk memanggil fungsi activity yang sudah tersedia pada fungsi internal android seperti Kamera, Dial Number, Open Browser dan lainnya.
Pemanggilan Intent secara explicit dilakukan dengan cara menentukan nama Activity tujuan. Intent mempunyai dua parameter, yaitu yang pertama adalah Context (tempat dimana activity tersebut sedang aktif) dan berikutnya adalah destination (activity yang akan dituju jika user melakukan sebuah aksi, misal menekan button)
Intent intent = new Intent(this, NextActivity.class);
startActivity(intent);
68 PEMROGRAMAN APLIKASI MOBILE
putExtra() adalah suatu metode yang disediakan oleh Intent yang digunakan untuk mengirimkan data pada activity yang dituju. Data yang dikirimkan dapat berupa string, integer, double, float, boolean, ArrayList, Char, array dll. Namun tidak semua tipe data dapat dikirim menggunakan intent, contohnya tipe data berukuran besar seperti bitmap atau file tidak dapat dikirim antar activity melalui metode ini.
B. Cara Membuat Explicit Intent
Berikut ini adalah cara membuat Intent yaitu interaksi antara halaman satu dengan yang lainnya
1. Buatlah sebuah project dengan nama INTENT-1
2. Bukalah main_activity.xml, pada bagian component tree ubah constrain layout menjadi linear layout – vertical seperti pada contoh jobheet sebelumnya
3. Buatlah 3 Button dengan nama Text dan nama Id seperti dibawah ini
Gambar 6. 1 Tampilan Button
4. Ubahlah pada mode Text, pastikan code xml ketiga button tersebut seperti dibawah ini
<Button
android:id="@+id/button_explicit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="150dp"
PEMROGRAMAN APLIKASI MOBILE 69
android:onClick="HandleExplicit"
android:text="EXPLICIT INTENT" />
<Button
android:id="@+id/button_implicit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:onClick="HandleImplicit"
android:text="IMPLICIT INTENT" />
<Button
android:id="@+id/button_extra"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="HandleIntentExtra"
android:text="Intent with Extra" />
5. Bukalah file MainActivity.java buatlah pendeklarasian variabel atau disebut juga pendeklarasian objek dan buatlah pengenalan komponen seperti dibawah ini
Gambar 6. 2 Tampilan MainActivity
6. Buka file main_activity.xml pada bagian text, lalu pada tag button tambahkan android:onClick="handleExplicit"
kemudian pindahkan cursor pada baris yang memuat kode
“handleExplicit” kemudian tekan tombol shortcut Alt + Enter dan pilih Create 'handleExplicit(View view)' in 'MainActivity'. Android Studio akan menambahkan secara otomatis method pada file MainActivity. Proses ini digunakan untuk menambahkan logika pada Activity ketika tombol ditekan.
70 PEMROGRAMAN APLIKASI MOBILE
7. Pada handler ini, tambahkan logika untuk membuka ExplicitIntentActivity dengan menggunakan Intent
Intent explicit = new Intent(this, Explicit_Intent.class);
startActivity(explicit);
8. Amati apakah terdapat eror ? ya, pastinya terdapat eror, hal ini disebabkan karena class Explisit_intent belum dibuat, oleh karena itu buatlah Activity baru yang bernama Explicit_Intent, activity ini yang akan dipanggil ketika button_explicit ditekan
9. Selanjutnya bukalah activity_explicit_intent.xml buatlah Tampilan “Hallo ini halaman Explicit Intent” seperti dibawah ini
Gambar 6. 3 Tampilan Halaman Explicit Intent
10. Jalankan program, maka akan tampil output seperti berikut ini Hasil Output Explicit Intent
PEMROGRAMAN APLIKASI MOBILE 71
Gambar 6. 4 Hasil output Explicit Intent
C. Cara Membuat Implicit Intent
Android menyediakan aktivity bawaan agar user dapat mengakses internal device seperti call, dialpad, camera, contact, browser, call log, gallery, dll. Pemanggilan aktivity ini disebut Implicit Intent.
User bisa melakukannya dengan cara mendefinisikan aksi tertentu yang umumnya menggunakan prefiks Action.
Dibawah ini merupakan contoh kode untuk pemanggilan Gallery yang berisi gambar
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
Berikut cara untuk membuka suatu alamat website menggunakan suatu browser tertentu :
1. Masih di project yang sama, Buka dan amati file MainActivity.java dan activity_main.xml dalam project Intent.
72 PEMROGRAMAN APLIKASI MOBILE
2. Pada tombol Implicit Intent tambahkan atribut android:onClick="handleImplicitIntent", kemudian generate handler menggunakan shortcut Alt + Enter.
3. Lengkapi dengan logika intent, untuk membuka suatu halaman Facebook
public void HandleImplicit(View view) { Intent implicit = new
Intent(Intent.ACTION_VIEW,
Uri.parse("http://www.facebook.com"));
startActivity(implicit);
}
4. Jalankan program maka akan tampil output seperti dibawah ini Hasil Output Implicit Intent
Gambar 6. 5 Hasil Output Implicit Intent D. Cara Mengirim Data Antar Activity
1. Masih di project yang sama, buatlah sebuah activity baru yang bernama Intent_with_extra yang digunakan
PEMROGRAMAN APLIKASI MOBILE 73 sebagai halaman untuk memasukkan data dan tambahkan activity baru dengan nama Tampil, yang digunakan sebagai halaman untuk menampilkan data sehingga struktur folder andorid keseluruhan sebagai berikut :
Gambar 6.6 Struktur Folder
2. Buka fila activity_intent_with_extra.xml dan buatlah tampilan seperti dibawah ini
74 PEMROGRAMAN APLIKASI MOBILE
Gambar 6. 7 Tampilan File activity_intent_with_extra.xml
Sesuaikan nama id yang dipakai dan nama text button.
Tampilan ini sama dengan tampilan pada praktikum sebelumya, hanya saja pada praktikum sebelumnya output text ditampilkan pada halaman itu sendiri, sedangkan praktikum kali ini kita akan mencoba menampilkan data ke activity lain yang dituju
3. Pada tombol Intent With Extra tambahkan atribut android:onClick="WithPutExtra", kemudian generate handler menggunakan shortcut Alt + Enter.
4. Secara otomatis akan dibuatkan fungsi WithPutExtra () pada Intent_with_extra.java kemudian lengkapi logika intent untuk mengambil nilai dari EditTeks menggunakan fungsi putExtra ()
public void WithPutExtra(View view) { Intent explicit = new Intent(this, Tampil.class);
explicit.putExtra("name", nama.getText().toString());
startActivity(explicit);
}
5. Lengkapi pendeklarasian variabel dan pengenalan komponen seperti berikut ini
PEMROGRAMAN APLIKASI MOBILE 75 Gambar 6.8 Tampilan Class Intent With Extra
6. Selanjutnya buka file activity_tampil.xml dan buatlah TextView untuk menampilkan nilai yang dimasukkan dari activity lain
Gambar 6. 9 Tampilan activity_tampil.xml
7. Kemudian buka file Tampil.java dan tambahkan code berikut ke dalam fungsi OnCreate ()
TextView t = (TextView) findViewById(R.id.tampil);
76 PEMROGRAMAN APLIKASI MOBILE
Bundle bundle = getIntent().getExtras();
String s = bundle.getString("name");
t.setText("HALLO " +s);
8. Amati dan analisa adakah perbedaan deklarasi object dan pengenalan komponen pada code diatas (poin 7) dengan code2 sebelumnya?
9. Jalankan program, maka akan keluar tampilan seperti dibawah ini Hasil output Intent With Extra
Gambar 6.10 Tampilan Intent With Extra
SOAL
1. Modifikasi Program diatas sehingga bisa mengirimkan dan menampilkan data berikut ke suatu Activity yang dituju Nim :
Nama : Kelas :
PEMROGRAMAN APLIKASI MOBILE 77
1. Bukalah Project Intent-2 yang telah diberikan, amatilah activity_main.xml dan buatlah fungsi untuk menghandle masing-masing button pada activity_main.xml
Gambar 6.11 Membuat Fungsi handleRadioButton
2. Bukalah MainActivity.java buatlah intent untuk menuju ke halaman yang dituju seperti dibawah ini
public void handleRadioButton(View view) { Intent intent = new
Intent(this,Ekspedisi.class);
startActivity(intent);
}
public void HandleListView(View view) { Intent intent = new
Intent(this,ListView.class);
startActivity(intent);
}
public void HandleDialogMessage(View view) { Intent intent = new
Intent(this,DialogMessage.class);
78 PEMROGRAMAN APLIKASI MOBILE startActivity(intent);
}
3. Bukalah activity_ekspedisi.xml lalu drag and drop RadioGroup terlebih dahulu dalam component tree, selanjutnya drag and drop RadioButton ke dalam RadioGrup yang telah dibuat sebelumnya sehingga struktur komponen tree menjadi seperti dibawah ini
Gambar 6.12 Drag and Drop Radio Button
4. Bentuk tampilan RadioButton adalah vertikal, bagaimana cara mengubahnya ke horizontal ? tulislah pada laporan
5. Bukalah class expedisi.java buatlah deklarasi object dari komponen-komponen yang digunakan seperti berikut ini, untuk TextView tidak perlu di deklarasikan karena hanya digunakan untuk menampilkan Text saja private EditText dari, ke, berat;
private RadioGroup radio_group_1;
private RadioButton rb1,rb2,rb3;
private Button button_hitung;
6. Buatlah program untuk pengenalan komponen seperti dibawah ini :
protected void onCreate(Bundle savedInstanceState) {
PEMROGRAMAN APLIKASI MOBILE 79 super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ekspedisi);
dari = findViewById(R.id.id_dari);
ke = findViewById(R.id.id_ke);
berat = findViewById(R.id.id_berat);
button_hitung =
findViewById(R.id.button_hitung);
}
7. Buatlah fungsi HandleHitung () dengan cara sama pada latihan sebelumnya untuk menghandle ketika button Hitung di klik
Intent intent = new
Intent(this,TampilExpedisi.class);
Perintah tersebut digunakan untuk membuka class TampilEkspedisi jika button hitung di klik
8. Masih dalam fungsi HandleHitung() buatlah perintah untuk mengambil text dari EditText menggunakan fungsi putEkstra()
intent.putExtra("key", dari.getText().toString());
intent.putExtra("key2", ke.getText().toString());
9. Untuk mengambil nilai yang dipilih pada RadioButton gunakan fungsi getCheckedRadioButtonId() dimana nomor indeks selalu dimulai dari 0
//membuat ID bagi radio button yang diklik int selectedId =
80 PEMROGRAMAN APLIKASI MOBILE
Toast.makeText(this, "Tidak ada yang dipilih!", Toast.LENGTH_SHORT).show();
} else{
RadioButton rb =
radio_group_1.findViewById(selectedId);
intent.putExtra("key4", rb.getText());
Toast.makeText(this, "Pilihan Anda adalah
"+ rb.getText(), Toast.LENGTH_SHORT).show();
}
10. Karena nilai yang didapatkan dari EditText defaultnya berupa String, maka untuk berat harus di parsing terlebih dahulu ke tipe data integer agar dapat diproses perhitungan total biayanya, parsing tipe data menggunakan perintah Integer.parseInt ()
11. Bukalah activity_tampil_ekspedisi.xml buat TextView seperti dibawah ini
Gambar 6.13 Halaman activity_tampil_ekspedisi.xml
PEMROGRAMAN APLIKASI MOBILE 81 12. Bukalah tampil_ekspedisi.java lakukan pendeklarasian
variabel dan pengenalan komponen
private TextView text1, text2, text3, text4, text5;
@Override
text1 = findViewById(R.id.text1);
text2 = findViewById(R.id.text2);
text3 = findViewById(R.id.text3);
text4 = findViewById(R.id.text4);
text5 = findViewById(R.id.text5);
13. Kemudian masih didalam fungsi onCreate () tambahkan perintah untuk mengambil data yang dimasukkan user
13. Kemudian masih didalam fungsi onCreate () tambahkan perintah untuk mengambil data yang dimasukkan user