如何将 listView 转换为 GridView flutter?
How do I convert a listView to a GridView flutter?
我有一个水平格式的可滚动列表视图,我想将其转换为具有相同元素的网格视图。
Container(
height: MediaQuery.of(context).size.height / 4,
child: ListView.builder(
scrollDirection: Axis.horizontal,
itemCount: homeList.length,
itemBuilder: (ctx, i) {
return GestureDetector(
onTap: () {
if (i == 0) {
_interstitialAd.show();
} else if (i == 1) {
} else if (i == 2) {
sendInvite();
}
},
);
},
),
)
这是列表视图的样子:
这就是我想要的样子:
Flutter 等价于 ListView.builder
for GridView
。
你只需要告诉它你想要的columns/rows(取决于方向)的数量。
GridView.builder(
itemCount: homeList.length,
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount:2),
itemBuilder: (BuildContext context, int index) {
return GestureDetector(
onTap: () {
if (i == 0) {
_interstitialAd.show();
} else if (i == 1) {
} else if (i == 2) {
sendInvite();
});
},
)
我有一个水平格式的可滚动列表视图,我想将其转换为具有相同元素的网格视图。
Container(
height: MediaQuery.of(context).size.height / 4,
child: ListView.builder(
scrollDirection: Axis.horizontal,
itemCount: homeList.length,
itemBuilder: (ctx, i) {
return GestureDetector(
onTap: () {
if (i == 0) {
_interstitialAd.show();
} else if (i == 1) {
} else if (i == 2) {
sendInvite();
}
},
);
},
),
)
这是列表视图的样子:
这就是我想要的样子:
Flutter 等价于 ListView.builder
for GridView
。
你只需要告诉它你想要的columns/rows(取决于方向)的数量。
GridView.builder(
itemCount: homeList.length,
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount:2),
itemBuilder: (BuildContext context, int index) {
return GestureDetector(
onTap: () {
if (i == 0) {
_interstitialAd.show();
} else if (i == 1) {
} else if (i == 2) {
sendInvite();
});
},
)