There is a Very Simple way just use centered_grid package :-
install By typing flutter pub add centered_grid and copy paste this example
import 'package:flutter/material.dart';
import 'package:centered_grid/centered_grid.dart';
class ExamplePage extends StatelessWidget {
final List<String> imageUrls = [
"https://dummyimage.com/180x150&text=1",
"https://dummyimage.com/180x150&text=2",
"https://dummyimage.com/180x150&text=3",
"https://dummyimage.com/180x150&text=4",
"https://dummyimage.com/180x150&text=5",
];
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text("CustomGrid Example")),
body: Column(
children: [
CenteredGrid(
itemCount: imageUrls.length,
crossAxisCount: 3,
crossAxisSpacing: 12,
mainAxisSpacing: 8,
itemBuilder: (context, index) {
return Image.network(imageUrls[index]);
},
),
],
),
);
}
}
Output:-