carousel method
Implementation
Widget carousel() {
return Padding(
padding: const EdgeInsets.only(top: 12, bottom: 40),
child: Container(
width: double.maxFinite,
clipBehavior: Clip.hardEdge,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(16),
color: Colors.white,
),
child: Obx(
() => controller.loadingNews.value
? const Padding(
padding: EdgeInsets.symmetric(vertical: 32),
child: Center(
child: CircularProgressIndicator(),
),
)
: controller.listNews.isEmpty
? const Padding(
padding: EdgeInsets.symmetric(vertical: 32),
child: Center(
child: Text(
"Tidak Ada Berita Acara",
textAlign: TextAlign.center,
),
),
)
: CarouselSlider(
options: CarouselOptions(
viewportFraction: 1,
autoPlay: true,
autoPlayInterval: const Duration(seconds: 3),
),
items: controller.listNews
.map((item) => itemCarousel(item))
.toList(),
),
),
),
);
}