AnimatedContainer adalah sebuah widget dalam framework Flutter yang memungkinkan perubahan visual pada container (wadah) dengan animasi yang halus. Widget ini sangat berguna ketika ingin membuat perubahan pada properti-properti seperti ukuran (width dan height), warna (color), padding, dan sebagainya, dan menginginkan perubahan tersebut ditampilkan secara animasi.
AnimatedContainer bekerja dengan menggunakan interpolasi untuk mengubah nilai-nilai properti dengan mulus dari nilai awal ke nilai akhir. Ketika nilai properti berubah, AnimatedContainer akan secara otomatis menganimasikan perubahan tersebut dengan durasi dan kurva animasi yang dapat dikonfigurasi.
Berikut adalah beberapa properti penting dari AnimatedContainer:
- duration: Properti ini digunakan untuk mengatur durasi animasi dalam satuan waktu, seperti Duration(milliseconds: 500) untuk animasi selama 500 milidetik.
- curve: Properti ini menentukan kurva animasi yang digunakan untuk perubahan nilai properti. Beberapa kurva animasi yang umum digunakan adalah Curves.linear, Curves.easeIn, Curves.easeOut, dan Curves.easeInOut.
- width, height: Properti ini digunakan untuk mengatur ukuran lebar (width) dan tinggi (height) container. Ketika nilai properti ini berubah, AnimatedContainer akan menganimasikan perubahan ukuran container dengan mulus.
- color: Properti ini digunakan untuk mengatur warna latar belakang (background color) dari container. Ketika nilai properti ini berubah, AnimatedContainer akan menganimasikan perubahan warna dengan transisi yang halus.
- padding: Properti ini digunakan untuk mengatur padding (jeda) dari konten di dalam container. Perubahan pada properti ini juga akan dianimasikan dengan mulus.
Selain properti di atas, AnimatedContainer juga mendukung properti-properti lain seperti alignment, margin, decoration, dan sebagainya, yang dapat digunakan untuk melakukan perubahan visual dengan animasi.
Penggunaan AnimatedContainer cukup sederhana. Anda hanya perlu mengatur nilai-nilai properti yang ingin diubah, dan AnimatedContainer akan secara otomatis menganimasikan perubahan tersebut. Misalnya, jika ingin mengubah ukuran dan warna container dengan animasi, Anda dapat menggunakan AnimatedContainer dengan mengubah nilai width, height, dan color container secara dinamis.
AnimatedContainer sangat berguna ketika ingin membuat efek-efek animasi yang halus dan menarik pada aplikasi Flutter Anda. Dengan memanfaatkan widget ini, Anda dapat memberikan pengalaman visual yang lebih menarik dan interaktif kepada pengguna aplikasi Anda.