GameHistoryView anpassen #20
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:game_tracker/core/custom_theme.dart';
|
import 'package:game_tracker/core/custom_theme.dart';
|
||||||
import 'package:game_tracker/presentation/widgets/game_tile.dart';
|
import 'package:game_tracker/presentation/widgets/game_history_tile.dart';
|
||||||
import 'package:game_tracker/presentation/widgets/top_centered_message.dart';
|
import 'package:game_tracker/presentation/widgets/top_centered_message.dart';
|
||||||
|
|
||||||
class GameHistoryView extends StatefulWidget {
|
class GameHistoryView extends StatefulWidget {
|
||||||
@@ -178,10 +178,11 @@ class _GameHistoryViewState extends State<GameHistoryView> {
|
|||||||
|
|
||||||
Widget gameHistoryListView(allGameData, suggestedGameData) {
|
Widget gameHistoryListView(allGameData, suggestedGameData) {
|
||||||
if (suggestedGameData.isEmpty && allGameData.isEmpty) {
|
if (suggestedGameData.isEmpty && allGameData.isEmpty) {
|
||||||
return TopCenteredMessage("Keine Spiele erstellt");
|
return const TopCenteredMessage(icon: Icons.error, title: 'Keine Spiele erstellt', message: '',);
|
||||||
} else if (suggestedGameData.isEmpty) {
|
} else if (suggestedGameData.isEmpty) {
|
||||||
return TopCenteredMessage("Kein Spiel mit den Suchparametern gefunden.");
|
return const TopCenteredMessage(icon: Icons.error, title: 'Keine Spiele mit den Suchparametern gefunden', message: '',);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ListView.separated(
|
return ListView.separated(
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0),
|
padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0),
|
||||||
itemCount: suggestedGameData.length,
|
itemCount: suggestedGameData.length,
|
||||||
@@ -191,12 +192,12 @@ Widget gameHistoryListView(allGameData, suggestedGameData) {
|
|||||||
),
|
),
|
||||||
itemBuilder: (context, index) {
|
itemBuilder: (context, index) {
|
||||||
final currentGame = suggestedGameData[index];
|
final currentGame = suggestedGameData[index];
|
||||||
return GameTile(
|
return GameHistoryTile(
|
||||||
gameTitle: currentGame['title'],
|
gameTitle: currentGame['title'],
|
||||||
gameType: currentGame['game'],
|
gameType: currentGame['game'],
|
||||||
ruleset: currentGame['date'],
|
ruleset: currentGame['date'],
|
||||||
players: '${currentGame['players']} Spieler',
|
groupName: currentGame['group'],
|
||||||
winner: currentGame['group'],
|
winner: "ich",
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|||||||
49
lib/presentation/widgets/game_history_tile.dart
Normal file
49
lib/presentation/widgets/game_history_tile.dart
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:game_tracker/core/custom_theme.dart';
|
||||||
|
import 'package:skeletonizer/skeletonizer.dart';
|
||||||
|
|
||||||
|
class GameHistoryTile extends StatefulWidget {
|
||||||
|
final String gameTitle;
|
||||||
|
final String gameType;
|
||||||
|
final String ruleset;
|
||||||
|
final String groupName;
|
||||||
|
final String winner;
|
||||||
|
|
||||||
|
const GameHistoryTile({
|
||||||
|
super.key,
|
||||||
|
required this.gameTitle,
|
||||||
|
required this.gameType,
|
||||||
|
required this.ruleset,
|
||||||
|
required this.groupName,
|
||||||
|
required this.winner,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
State<GameHistoryTile> createState() => _GameHistoryTileState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class _GameHistoryTileState extends State<GameHistoryTile> {
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Text(
|
||||||
|
widget.gameTitle,
|
||||||
|
style: const TextStyle(fontSize: 18, fontWeight: FontWeight.bold),
|
||||||
|
),
|
||||||
|
const SizedBox(width: 5),
|
||||||
|
Text(
|
||||||
|
widget.gameType,
|
||||||
|
style: const TextStyle(fontSize: 14, color: Colors.grey),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user