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('-'),
),
);
},
);
这已经解决了错误,但现在第二个瓷砖没有出现,我想这可能是不同的。检查或重写您的内部代码。