Flutter:如何从颜色列表更改 ListView Builder 中的 listtile 颜色。即使颜色列表的尺寸也小于项目

Cod*_*ddy 2 flutter flutter-layout

假设颜色列表是,

列表颜色 = [Colors.red, Colors.yellow,Colors.blue, Colors.green]; //4 种颜色和项目超过 4 ,我如何为下一个项目重复这些颜色。

图片

预期结果,

item1 - 红色,item2 - 黄色,item3 - 蓝色,item4 - 绿色,item5 - 红色,item6 - 黄色,item7 - 蓝色,item8 - 绿色,

图2

完整代码

  import 'package:flutter/material.dart';


  void main() {
    runApp(MyApp());
  }

  List colors = [Colors.red, Colors.yellow,Colors.blue, Colors.green];

  class MyApp extends StatelessWidget {
    @override
    Widget build(BuildContext context) {
      return MaterialApp(
        debugShowCheckedModeBanner: false,
        home: Scaffold(
          body: Center(
            child: MyWidget(),
          ),
        ),
      );
    }
  }

  class MyWidget extends StatelessWidget {
    @override
    Widget build(BuildContext context) {
      return ListView.builder(
          itemCount: 8,
          itemBuilder: (BuildContext context,int index){
            return ListTile(
                tileColor: colors[index] ,
              
              title:Text("List item $index")
              );
          }
          );
    }
  }
Run Code Online (Sandbox Code Playgroud)

聂超群*_*聂超群 8

这是工作代码: 在此输入图像描述

如果你想要一个无限列表,请将 itemCount 设置为 null :)