Ada kalanya dalam aplikasi kita perlu menjalankan fungsi secara langsung tanpa enter atau tombol ketika user mengetikkan teks di textfield. Pada flutter hal tersebut dapat dengan mudah ditambahkan. Ada 2 cara yang bisa kita pilih untuk implementasinya :
- Menggunakan OnChange
Ini mungkin cara yang paling sederhana. Secara default TextField sudah memiliki fungsi onChange. Jadi cukup ditambahkan seperti ini :
TextField(onChanged: (text) {print("text $text");},)
- Menggunakan Controller
Untuk menggunakan change event pada controller, dengan menambahkan addListener pada controller tersebut. Dan penambahan addListener tersebut dapat dilakukan saat initState. Contoh jelasnya seperti ini :
final myController = TextEditingController(); textListener() { print("Current Text is ${myController.text}"); } @override void dispose() { super.dispose(); myController.dispose(); } @override void initState() { super.initState(); myController.addListener(textListener); }