首页 > 解决方案 > 列表在末尾重复/类似轮播

问题描述

我有一个小图标列表,并且希望在到达列表末尾时重复这些图标(作为同时在屏幕上显示大约 8 个项目的轮播),用户可以在其中选择元素以显示不同的内容。

这种情况下是否有一些小部件可用?

标签: flutter

解决方案


PageView

您可以PageView为此使用 a ,即专门为PageView.builder.

当到达页面末尾时,您将使用模数循环您的项目:

PageView.builder(
  itemBuilder: (context, index) => Icon(icons[index % 8]),
  // ...
)

在此示例中,您将拥有8返回给构建器的图标,并且一旦用户滚动列表中的第九个项目,第一个图标就会再次显示,依此类推。

ListView

如果你喜欢这种行为,你可以对 a 做同样的事情ListView,即特别是ListView.builder

ListView.builder(
  itemBuilder: (context, index) => Icon(icons[index % 8]),
  // ...
)

推荐阅读