如何在 Flutter 的 GridView 中增加索引?
How to increment index in a GridView in Flutter?
我有一个 GridView
如下所示。我试图将它分成更小的 GridView
s 并在它们之间有一个分隔符。
然而,不是向我显示一个连续的列表,而是从 0-5 的元素不断重复。我正在尝试以 6 为一组继续元素,其中第一批是 0-5,下一批是 6-11,依此类推..
这是我的代码:
@override
Widget build(BuildContext context) {
return Scaffold(
body: ListView.separated(
separatorBuilder: (context, int) {
return Divider(color: Colors.black,);
},
// shrinkWrap: true,
itemBuilder: (BuildContext context, int index) {
return GridView.count(
shrinkWrap: true,
crossAxisCount: 3,
childAspectRatio: 2.0,
children: List.generate(6, (index) {
return Center(
child: RaisedButton(
onPressed: (){},
color: Colors.greenAccent,
child: Text(
'$index AM',
),
),
);
}),
);
},
itemCount: 4,
));
}
这是 GridView
的样子:
您可以使用 itembuilder 中的索引来了解您生成的是哪一组 6。
将 itemBuilder
中的名称 index
更改为 itemBuilderIndex
,如下所示:
itemBuilder: (BuildContext context, int itemBuilderIndex) {
并执行此操作以获得您想要的计算数字:
'${(itemBuilderIndex * 6) + index} AM'
(6 是您每个细分市场的项目数)
我有一个 GridView
如下所示。我试图将它分成更小的 GridView
s 并在它们之间有一个分隔符。
然而,不是向我显示一个连续的列表,而是从 0-5 的元素不断重复。我正在尝试以 6 为一组继续元素,其中第一批是 0-5,下一批是 6-11,依此类推..
这是我的代码:
@override
Widget build(BuildContext context) {
return Scaffold(
body: ListView.separated(
separatorBuilder: (context, int) {
return Divider(color: Colors.black,);
},
// shrinkWrap: true,
itemBuilder: (BuildContext context, int index) {
return GridView.count(
shrinkWrap: true,
crossAxisCount: 3,
childAspectRatio: 2.0,
children: List.generate(6, (index) {
return Center(
child: RaisedButton(
onPressed: (){},
color: Colors.greenAccent,
child: Text(
'$index AM',
),
),
);
}),
);
},
itemCount: 4,
));
}
这是 GridView
的样子:
您可以使用 itembuilder 中的索引来了解您生成的是哪一组 6。
将 itemBuilder
中的名称 index
更改为 itemBuilderIndex
,如下所示:
itemBuilder: (BuildContext context, int itemBuilderIndex) {
并执行此操作以获得您想要的计算数字:
'${(itemBuilderIndex * 6) + index} AM'
(6 是您每个细分市场的项目数)