Better layout for user card and user management page

This commit is contained in:
2025-05-05 20:08:01 +02:00
parent 4c7ce27a0c
commit 94337581d8
2 changed files with 181 additions and 116 deletions

View File

@ -40,33 +40,32 @@ class _UserManagementPageState extends State<UserManagementPage> {
return const Center(child: Text("Aucun utilisateur trouvé"));
}
// Détermine le nombre de colonnes selon la largeur
final width = MediaQuery.of(context).size.width;
int crossAxisCount = 1;
if (width > 1200)
int crossAxisCount;
// Ajustement du nombre de colonnes selon la taille d'écran
if (width > 1200) {
crossAxisCount = 4;
else if (width > 800)
} else if (width > 800) {
crossAxisCount = 3;
else if (width > 600) crossAxisCount = 2;
} else if (width > 600) {
crossAxisCount = 2;
} else {
crossAxisCount = 1;
}
return Padding(
padding: const EdgeInsets.all(16),
child: GridView.builder(
itemCount: users.length,
// Dans GridView.builder
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: width > 1200
? 4
: width > 800
? 3
: width > 600
? 2
: 1,
crossAxisCount: crossAxisCount,
crossAxisSpacing: 16,
mainAxisSpacing: 16,
// childAspectRatio fixé pour desktop ; mobile ignore car row layout
mainAxisExtent: width < 600
? 80
: 180, // Augmenté de 170 à 180 pour le desktop
),
itemBuilder: (context, i) {
final user = users[i];
return UserCard(