I have a model that looks like this
class Activity {
int id;
String title;
List <String> imageurl;
Activity({this.id, this.title, this.imageurl});
}
List<Activity> activities = [
Activity(
id: 1,
title: "Ministry of Education",
imageurl: ["assets/images/place1.jpg","assets/images/place2.jpg","assets/images/place3.jpg" ]
),
Activity(
id: 2,
title: "Ministry of Sports",
imageurl:["assets/images/place4.jpeg","assets/images/place5.jpg","assets/images/place6.jpg"]
),
Activity(
id: 3,
title: "Ministry of Technology",
imageurl: ["assets/images/place7.jpg","assets/images/place8.jpg","assets/images/place9.jpg"]
)
];
How would access all the imageurls in one statement instead of using multiple AssetsImages via the position in the array like below
Carousel(
boxFit: BoxFit.cover,
autoplay: true,
animationCurve: Curves.fastOutSlowIn,
animationDuration: Duration(milliseconds: 1000),
indicatorBgPadding: 6,
dotBgColor: Colors.grey.withOpacity(.1),
dotSize: 4.0,
showIndicator: true,
images: [AssetImage(widget.activity.imageurl[0]),
AssetImage(widget.activity.imageurl[1]),
AssetImage(widget.activity.imageurl[2])
],
)
Use map
:
images: widget.activity.imageurl.map((i) => AssetImage(i)).toList()