Aplikasi Mobile

Laporan Praktikum 1

Input Widgets dan Basic Form

A

Pendahuluan

Praktikum ini membahas penggunaan Basic Form pada Flutter untuk menerima, mengelola, dan memvalidasi input dari pengguna. Materi yang dipelajari meliputi penggunaan TextField, TextFormField, GlobalKey, validate(), serta pengelolaan perubahan state menggunakan setState(). Selain itu, praktikum ini juga membahas penggunaan const untuk meningkatkan efisiensi dalam proses pembangunan ulang (rebuild) widget pada aplikasi Flutter.

B

Tujuan

Membuat Input Widgets

Mampu membuat beberapa jenis input widgets pada Flutter untuk menerima inputan dari keyboard.

Mengelola Inputan

Mampu membuat dan mengontrol inputan dari user, termasuk melakukan validasi pada setiap field.

C

Alat dan Tools yang Digunakan

Laptop
Flutter SDK
VS Code
Dart
GIT
Google Chrome
D

Langkah Kerja

Basic Form dengan TextField

1
Membuat File Baru

Buat file dart baru dengan nama form-textfield.dart di dalam folder lib.

2
Membuat Tampilan Dasar

Buat tampilan basic form dengan menggunakan widget TextField untuk inputan, ElevatedButton untuk event listener.

basic textfield

Jika dijalankan maka akan muncul tampilan seperti gambar berikut.

tampilan basic textfield
3
Menambahkan Controller

Pada class _MyFormState, tambahkan TextEditingController dan method dispose() untuk membersihkan text inputan.

controller
4
Menghubungkan Controller ke TextField

Tambahkan properti controller, keyboardType, dan onChanged pada widget TextField agar inputan dapat diambil.

menghubungkan controller ke textfield
5
Menampilkan Inputan pada ElevatedButton

Tambahkan kode program berikut pada onPressed widget ElevatedButton agar inputan ditampilkan melalui SnackBar.

menghubungkan controller ke textfield
6
Simpan dan Jalankan

Simpan file kemudian jalankan program. Ketikkan nama pada field, lalu tekan tombol untuk melihat hasil inputan yang ditampilkan pada SnackBar.

tampilan akhir

Basic Form dengan TextFormField

1
Membuat File Baru

Buat file dart baru dengan nama form-textformfield.dart di dalam folder lib.

2
Membuat Tampilan Form

Buat form inputan menggunakan 2 buah widget TextFormField dan 1 buah ElevatedButton untuk submit.

basic textformfield

Jika dijalankan maka akan muncul tampilan seperti gambar berikut.

tampilan basic textfield
3
Menambahkan Key, Controller, dan Fungsi Submit

Tambahkan pada class _MyFormTextState kode berikut: GlobalKey<FormState>, controller untuk masing-masing field, method dispose(), dan fungsi _submitForm().

key, controller, dan fungsi submit
4
Membungkus dengan Widget Form

Bungkus widget tampilan menggunakan Form dan tambahkan key: _formKey agar dapat diakses secara global.

5
Menambahkan Validator

Ubah kode program pada kedua TextFormField untuk menambahkan controller dan properti validator. Field email juga divalidasi harus mengandung karakter @.

menambahkan validator
6
Menghubungkan Fungsi Submit

Tambahkan method _submitForm pada onPressed di ElevatedButton.

menambahkan fungsi submit
7
Simpan dan Jalankan

Simpan file lalu jalankan program. Isi field nama dan email, kemudian tekan tombol Submit. Jika validasi berhasil, output akan tampil seperti berikut.

hasil basic textformfield
E

Tugas

1
Kode Program

Implementasi kode program kalkulator sederhana menggunakan Flutter dengan dua inputan untuk menerima nilai dan tombol operasi untuk melakukan perhitungan airtmatika.

kode program kalkulator sederhana
2
Hasil Program

Hasil implementasi berupa aplikasi kalkulator sederhana yang dapat menerima dua nilai masukan dan menampilkan hasil operasi penjumlahan, pengurangan, perkalian, dan pembagian.

kode program kalkulator sederhana
F

Kesimpulan

Dari praktikum yang telah dilakukan, telah dipelajari dan dipraktikkan penggunaan input widgets dan basic form pada Flutter, di antaranya:

  • TextField digunakan untuk menerima inputan teks sederhana tanpa validasi bawaan.
  • TextFormField digunakan untuk inputan yang memerlukan validasi, karena sudah terintegrasi dengan FormState.
  • GlobalKey<FormState> digunakan untuk mengakses dan mengontrol status form dari luar widget, seperti memanggil validate().
  • setState() digunakan untuk memberi tahu Flutter agar melakukan rebuild pada tampilan setelah terjadi perubahan state.
  • const digunakan untuk meningkatkan performa aplikasi dengan mencegah widget dibangun ulang secara tidak perlu.
G

Repository Github

Kode project dapat diakses melalui repository Github berikut.

Buka Github