List 创建一个带有分隔符的开关列表平铺

List 创建一个带有分隔符的开关列表平铺,list,listview,flutter,dart,flutter-layout,List,Listview,Flutter,Dart,Flutter Layout,我试图创建一个列表,列表中的开关瓷砖在颤振之间有分隔符 我已经尝试使用ListTile.divideTiles: ListView( children: ListTile.divideTiles( context: context, tiles: [ SwitchListTile( seco

我试图创建一个列表,列表中的开关瓷砖在颤振之间有分隔符

我已经尝试使用
ListTile.divideTiles

ListView(
                  children: ListTile.divideTiles(
                    context: context,
                    tiles: [
                      SwitchListTile(
                        secondary: Icon(Icons.signal_cellular_4_bar),
                        title: Text(
                          "First Tile",
                        ),
                        value: var1,
                        onChanged: (bool value) {
                          setState(
                            () {
                              var1= value;
                            },
                          );
                        },
                      ),
                      SwitchListTile(
                        secondary: Icon(Icons.swap_vert),
                        title: Text(
                          "Second Tile",
                            ),
                        value: var2,
                        onChanged: (bool value) {
                          setState(
                            () {
                              var2= value;
                            },
                          );
                        },
                      ),
                    ],
                  ),
                ),
但是当我试着运行代码时,我得到了以下错误:

“类型'\u SyncIterable'不是“列表”类型的子类型”

我该由谁创建带有分隔符的交换机磁贴列表?

请尝试此操作

.toList()
添加到
列表tile.divideTiles的末尾

ListTile.divideTiles(
  // all your code
  // all your code
  // all your code
).toList()

为什么不试试
ListView.separated

int _selectedIndex = 0;
return ListView.separated(
  //Here's your separator
  separatorBuilder: (BuildContext context, int index) {
    return SizedBox(
      height: 10, //Whatever spacing you want.
    );
  },
  physics: BouncingScrollPhysics(),
  scrollDirection: Axis.vertical,
  shrinkWrap: true,
  itemCount: 2, //How many tiles you want
  padding: EdgeInsets.all(10),
  itemBuilder: (BuildContext context, int index) {
    return ClipRRect( //round up the edges for nicer look
      borderRadius: BorderRadius.all(Radius.circular(5)),
      //And here's your tile
      child: SwitchListTile(
        tileColor: Colors.grey[900],
        selectedTileColor: Colors.black,
        selected: index == _selectedIndex,
        value: ... ,
        onChanged: (v) {
          
             ... 


        },
        title: Text('Tile #' + index.toString()),
        subtitle: Text('-'),
      ), 
    );
  },
);

这已经解决了错误,但现在第二个瓷砖没有出现,我想这可能是不同的。检查或重写您的内部代码。