flutter - 如何回收 List<Color> 索引?

标签 flutter dart

我有一个 ListViewBuilder ,它将基于 Firestore 数据库传播一个可重用的容器,它将拉出一个单独的颜色列表,例如这个颜色的可重用容器:

List<Color> colours = [
    Color(0xFFFB5A50),
    Color(0xFF26E29E),
    Color(0xFFffc452),
    Color(0xFF7773FB),
  ];

我的问题是,因为数据库中的列表数量可能超过 100。你会如何
连续重用颜色列表而不超出列表范围?

最佳答案

如果我理解正确,您可以使用运算符 %,例如:

@override
Widget build(BuildContext context) {
  return Scaffold(
    body: ListView.separated(
      itemCount: 100,
      itemBuilder: (_, index) {
        return Container(
          height: 40,
          color: colours[index % colours.length],
        );
      },
      separatorBuilder: (_, index) => SizedBox(height: 8),
    ),
  );
}

有关此运算符的更多信息:dart operator % method

关于flutter - 如何回收 List<Color> 索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61201018/

相关文章:

list - Dart List 中的 firstWhere() 和 indexWhere() 有什么区别

flutter - ListView 不可滚动时展开

flutter - 在 Android Studio 中运行和热重载 flutter 的问题(坏状态 : Future already completed)

map - 从 Dart Map 中删除选定的键

flutter - 如何在 Flutter 中创建一个可以从屏幕底部滑动的页面?

flutter - 抖动中的畸形消息是什么意思?什么时候以及为什么要来?

Flutter:背景调整大小和表单输入问题

visual-studio-code - 如何为 Flutter 模拟器的 Visual Studio Code 设置设备

flutter - 如何在Flutter中使用JsonSerializable时识别动态键?

flutter - 不处理流,而是将计数器流的值重置为0并再次收听