使用carousel_slider 1.0.0,我需要提供一张地图来定义滑块中的项目数量。
我可以使用“ articlesMap”查找来自API的商品数量,但由于滑块使用以下输入,因此我需要将此整数转换为List<Map>
:
items: [1,2,3,4,5].map((i) {})
我将如何进行转换?滑块接收的项目数量不是静态的,因此我不能依靠输入[1,2,3,4,5]
来接收+/- 5个项目。
答案 0 :(得分:1)
Dart为列表提供了一个生成器,您可以将其用作:
items: List<int>.generate(articlesList.length, (i) => i + 1).map...
仅映射您的文章列表可能会更简单(不显示文章的来源):
CarouselSlider(
height: 400.0,
items: articlesList
.map((a) => Builder(
builder: (BuildContext context) => Container(
width: MediaQuery.of(context).size.width,
margin: EdgeInsets.symmetric(horizontal: 5.0),
decoration: BoxDecoration(color: Colors.amber),
child: Text(
a.name,
style: TextStyle(fontSize: 16.0),
),
),
))
.toList(),
);
如果文章确实在地图上,则可以使用.values