Laporan Praktikum
24 September 2025 ~ Oleh Kevin Andhika
Input Widgets dan Basic Form
1. Tujuan
Tujuan praktikum ini yaitu pengguna mampu membuat membuat basic form untuk
menerima inputan dari keyboard dan mengelola inputan :
- Membuat beberapa input widgets
- Membuat dan mengontrol inputan dari user
- Menambahkan informasi error ketika memasukkan input yang tidak sesuai
2. Alat yang Digunakan
- IDE (Visual Studio Code)
- Flutter & Dart
3. Teori
- Basic Form
Basic Form merupakan widget yang berfungsi sebagai inputan nilai seperti TextField,
TextFormField, CheckBox, Switch, Dropdown, Radio, Dialog, DatePicker, BottomSheet,
Snackbar dan lain-lain. Basic Form digunakan untuk validasi dan mengelola inputan
dari berbagai field.
Form ini akan memberikan tampilan inputan kemudian inputan akan diperiksa apakah sudah
sesuai dengan aturan atau format yang ditetapkan, selanjtunya data inputan akan
diambil nilainya setelah proses pengecekan selesai dilakukan.
- Text Field
TextField adalah widget yang digunakan untuk memasukkan text oleh pengguna, widget
ini biasanya digunakan untuk membuat form inputan seperti form login, pencarian dll.
Fitur TextField antara lain:
- Menerima input dari keyboard
- Memiliki property yang lengkap style, decoration, dan jenis inputan
- Dapat mengelola teks menggunakan TextEditingController
- Text Form Field
TextFormField adalah widget versi lengkap dari TextField yang secara otomatis
terintegrasi dengan logika validasi dan manajemen state dari sebuah form
Fitur TextFormField antara lain
- Menerima input teks dari keyboard.
- Memiliki properti validator yang berfungsi untuk memeriksa apakah input
sudah sesuai dengan aturan yang ditentukan.
- Menampilkan pesan error secara otomatis di bawah field jika validasi gagal.
- Berinteraksi dengan FormState untuk melakukan validasi secara kolektif dengan
validate() method.
4. Langkah-langkah
A. Basic Form TextField
Buat file dart baru dengan nama form-textfield.dart di dalam folder lib
Buat sebuah tampilan basic form dengan menggunakan widget TextField untuk inputan dan
ElevatedButton sebagai tombol event listener
- _MyFormState: membuat variabel TextEditingController yang berguna untuk
mengambil inputan dari pengguna, lalu membuat variabel yang membersihkan teks inputan
- TextField: menambahkan controller properti jenis inputan agar bisa di
lakukan aksi input dari pengguna
- ElevatedButton: pada bagian onPressed ditambahkan program agar tombol
bisa ditekan dan menampilkan inputan pengguna dari textfield ke dalam widget snackbar
(yang biasanya berada di paling bawah halaman), bisa juga menampilkan inputan ke dalam suatu area teks
Berikut hasil run dari kode basic form TextField
- Ketika pertama kali dijalankan
- Ketika textfield ditekan
- ketika ElevatedButton ditekan
B. Basic Form TextFormField
Buat file dart baru dengan nama form-textformfield.dart di dalam folder lib
Buat form inputan pengguna menggunakan widget TextFormField dan ElevatedButton beserta
handling jika inputan tidak sesuai
- _MyFormTextState: membuat controller untuk textformfield bagian nama
dan email, lalu membuat method yang menghapus inputan nama dan email dan membuat method
yang berjalan ketika ElevatedButton di tekan
- TextFormField: membuat handling pada textformfield berdasarkan inputan yang diberikan
pengguna kosong ataupun tidak sesuai dengan format biasanya
- ElevatedButton: pada bagian onPressed ditambahkan method _submitform agar bisa menampilkan
output Validasi Berhasil berupa Snackbar
Berikut hasil run dari kode basic form TextFormField
- Ketika pertama kali dijalankan
- Ketika ElevatedButton ditekan dan TextField kosong
- ketika ElevatedButton ditekan dan TextField salah format
- ketika ElevatedButton ditekan dan TextField sudah benar
Kesimpulan
Berdasarkan praktikum yang telah dilakukan, dapat disimpulkan bahwa
pengembangan form input dalam Flutter menggunakan TextField dan TextFormField
beserta controller-nya memungkinkan pembuatan antarmuka interaktif yang dapat
menerima, memvalidasi, dan mengelola input pengguna dengan efektif, termasuk
penanganan error dan tampilan feedback, serta diimplementasikan dalam aplikasi
kalkulator aritmatika sederhana yang berfungsi dengan baik.
Latihan
- Buatlah aplikasi kalkulator yang dapat menjalankan operasi kabataku dengan menggunakan 2 buah
widget inputan (TextField atau TextFormField), lalu menggunakan ElevatedButton dan widget text
untuk menampilkan hasil opersi aritmatikanya
> Berikut kode operasi aritmatika kabataku
Kode ini membuat operasi aritmatika sederhana berdasarkan 2 buah inputan yang diisi oleh pengguna
pada TextFormField yang mana menggunakan handling ketika pengguna memasukkan inputtan yang tidak sesuai formatnya.
Berikut tampilan dari aplikasi kalkulator aritmatika sederhana
- Ketika pertama kali dijalankan
Handling TextFormField
- Ketika textformfield kosong
- Ketika textformfield salah format