Datum beim layout hinzugefügt

This commit is contained in:
2023-04-20 16:26:11 +02:00
parent 5fc9f1af7c
commit df6c9ca73a
3 changed files with 69 additions and 32 deletions
+48 -20
View File
@@ -1,34 +1,38 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'DetailPage.dart'; import 'DetailPage.dart';
import 'package:intl/intl.dart';
class UserDefinedItem extends StatelessWidget { class UserDefinedItem extends StatelessWidget {
final String title; final String title;
final String datum;
final String description; final String description;
final Image? image; final Image? image;
const UserDefinedItem({super.key, const UserDefinedItem({
Key? key,
required this.title, required this.title,
required this.description, required this.description,
required this.datum,
this.image, this.image,
}); }) : super(key: key);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
String shortDescription = "${description.substring(0, 30)}..."; String shortDescription = "${description.substring(0,34)}...";
return Padding( return Padding(
padding: const EdgeInsets.symmetric(vertical: 1.0), padding: const EdgeInsets.symmetric(vertical: 1.0),
child: Card( child: Card(
child: InkWell( child: InkWell(
onTap: () { onTap: () {
// Open a new screen when the user taps on the list item // Open a new screen when the user taps on the list item
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( MaterialPageRoute(
builder: (context) => DetailPage( builder: (context) => DetailPage(
title: title, title: title,
description: description, description: description,
image: image!= null ? image! : null, image: image != null ? image! : null,
), ),
), ),
); );
@@ -40,17 +44,31 @@ class UserDefinedItem extends StatelessWidget {
height: 130, height: 130,
child: image, child: image,
), ),
Expanded( Flexible(
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Padding( Padding(
padding: const EdgeInsets.all(8.0), padding: const EdgeInsets.all(8.0),
child: Text( child: Row(
title, mainAxisAlignment: MainAxisAlignment.spaceBetween,
style: const TextStyle( children: [
fontSize: 24, // beliebige Schriftgröße Flexible(
), child: Text(
title,
overflow: TextOverflow.ellipsis,
style: const TextStyle(
fontSize: 20, // beliebige Schriftgröße
),
),
),
Text(
datum,
style: const TextStyle(
fontSize: 16, // beliebige Schriftgröße
),
),
],
), ),
), ),
Padding( Padding(
@@ -67,7 +85,7 @@ class UserDefinedItem extends StatelessWidget {
), ),
], ],
), ),
) ),
), ),
); );
} }
@@ -76,6 +94,8 @@ class UserDefinedItem extends StatelessWidget {
class NewsList extends StatelessWidget { class NewsList extends StatelessWidget {
const NewsList({super.key}); const NewsList({super.key});
@@ -86,41 +106,49 @@ class NewsList extends StatelessWidget {
children: [ children: [
UserDefinedItem( UserDefinedItem(
title: 'Rosalia Kapelle', title: 'Rosalia Kapelle',
datum: DateFormat('dd.MM.yyyy').format(DateTime.now()),
description: 'Kapelle bei der Ausfahrt von Oggau', description: 'Kapelle bei der Ausfahrt von Oggau',
image: Image.network('https://upload.wikimedia.org/wikipedia/commons/d/d7/Oggau_Rosaliakapelle.JPG'), image: Image.network('https://upload.wikimedia.org/wikipedia/commons/d/d7/Oggau_Rosaliakapelle.JPG'),
), ),
UserDefinedItem( UserDefinedItem(
title: 'Kirche der Marktgemeinde Oggau', title: 'Kirche der Marktgemeinde Oggau',
datum: DateFormat('dd.MM.yyyy').format(DateTime.now()),
description: 'Die römisch-katholische Pfarrkirche Oggau steht abseits der Hauptstraße in einem ehemaligen ummauerten Friedhof in der Marktgemeinde Oggau am Neusiedler See im Bezirk Eisenstadt-Umgebung im Burgenland. Die der Heiligen Dreifaltigkeit und Simon Zelotes und Judas Thaddäus geweihte Pfarrkirche gehört zum Dekanat Eisenstadt-Rust in der Diözese Eisenstadt. Die Kirche steht unter Denkmalschutz.', description: 'Die römisch-katholische Pfarrkirche Oggau steht abseits der Hauptstraße in einem ehemaligen ummauerten Friedhof in der Marktgemeinde Oggau am Neusiedler See im Bezirk Eisenstadt-Umgebung im Burgenland. Die der Heiligen Dreifaltigkeit und Simon Zelotes und Judas Thaddäus geweihte Pfarrkirche gehört zum Dekanat Eisenstadt-Rust in der Diözese Eisenstadt. Die Kirche steht unter Denkmalschutz.',
image: Image.network('https://upload.wikimedia.org/wikipedia/commons/e/e6/Oggau_Kirche2.JPG'), image: Image.network('https://upload.wikimedia.org/wikipedia/commons/e/e6/Oggau_Kirche2.JPG'),
), ),
UserDefinedItem( UserDefinedItem(
title: 'Gasthaus Monika', title: 'Gasthaus Monika',
datum: DateFormat('dd.MM.yyyy').format(DateTime.now()),
description: 'Herzlich willkommen im Gasthaus Monika\nDas traditionelle Gasthaus Monika in Oggau am Neusiedler See steht bereits seit vielen Jahren für Gastfreundschaft. Vor über 80 Jahren wurde das Wirtshaus erbaut und stetig modernisiert. Mit der Übernahme im Jahr 1975 hat sich Familie Gmasz es sich zur Aufgabe gemacht, ihr Wirtshaus authentisch und traditionell weiterzuführen.\nDas freundliche und kompetente Team rund um Monika Gmasz, verwöhnt seine Gäste mit guter, bodenständiger Küche in gemütlicher Atmosphäre.\nIm Juni, Juli und August haben wir für Sie auch jeden Montag geöffnet.', description: 'Herzlich willkommen im Gasthaus Monika\nDas traditionelle Gasthaus Monika in Oggau am Neusiedler See steht bereits seit vielen Jahren für Gastfreundschaft. Vor über 80 Jahren wurde das Wirtshaus erbaut und stetig modernisiert. Mit der Übernahme im Jahr 1975 hat sich Familie Gmasz es sich zur Aufgabe gemacht, ihr Wirtshaus authentisch und traditionell weiterzuführen.\nDas freundliche und kompetente Team rund um Monika Gmasz, verwöhnt seine Gäste mit guter, bodenständiger Küche in gemütlicher Atmosphäre.\nIm Juni, Juli und August haben wir für Sie auch jeden Montag geöffnet.',
image: Image.network('https://thumbor.apps.unitecms.io/unsafe/1400x0/https://ama-media.ams3.digitaloceanspaces.com/5f4e06d582ddc/a_pov81202.jpg'), image: Image.network('https://thumbor.apps.unitecms.io/unsafe/1400x0/https://ama-media.ams3.digitaloceanspaces.com/5f4e06d582ddc/a_pov81202.jpg'),
), ),
UserDefinedItem( UserDefinedItem(
title: 'Sebastiankeller', title: 'Sebastiankeller',
datum: DateFormat('dd.MM.yyyy').format(DateTime.now()),
description: 'Kulinarik - Spezialitäten von Sonja und Bernhard Landauer\nGemeinsam mit meinem Sohn Bernhard und unserem Küchenteam sorgen wir für besondere und vor allem regionalen und traditionellen, kulinarischen Genüsse. Mein Mann, Ossi Landauer und das Serviceteam ist um Ihr Wohl bemüht und lässt keine Wünsche offen.\nAuf der Speisekarte des Sebastiankellers sind neben Fisch, -Grill, -Sautanzspezialitäten viele saisonale Schmankerl und auch nicht alltägliche Gerichte wie „Gebackenen Fledermäuse“ (da ist das beste Teil vom Schweinsschlögl) oder „Geschmorte Rindswangerl“, zu finden.\nÜberwiegend werden regionale Produkte, zum Teil aus eigenem Anbau verarbeitet. So kommen die Brombeeren, Zwetschen, Quitten, Hollunder oder Kürbisse aus unserem eigenen Garten. Was an Früchten zu viel ist wird, kochen wir ein, wird zu Saft verarbeitet oder destilliert.', description: 'Kulinarik - Spezialitäten von Sonja und Bernhard Landauer\nGemeinsam mit meinem Sohn Bernhard und unserem Küchenteam sorgen wir für besondere und vor allem regionalen und traditionellen, kulinarischen Genüsse. Mein Mann, Ossi Landauer und das Serviceteam ist um Ihr Wohl bemüht und lässt keine Wünsche offen.\nAuf der Speisekarte des Sebastiankellers sind neben Fisch, -Grill, -Sautanzspezialitäten viele saisonale Schmankerl und auch nicht alltägliche Gerichte wie „Gebackenen Fledermäuse“ (da ist das beste Teil vom Schweinsschlögl) oder „Geschmorte Rindswangerl“, zu finden.\nÜberwiegend werden regionale Produkte, zum Teil aus eigenem Anbau verarbeitet. So kommen die Brombeeren, Zwetschen, Quitten, Hollunder oder Kürbisse aus unserem eigenen Garten. Was an Früchten zu viel ist wird, kochen wir ein, wird zu Saft verarbeitet oder destilliert.',
image: Image.network('https://10619-2.s.cdn12.com/rests/original/315_49137159.jpg'), image: Image.network('https://10619-2.s.cdn12.com/rests/original/315_49137159.jpg'),
), ),
UserDefinedItem( UserDefinedItem(
title: 'Rosalia Kapelle', title: 'Rosalia Kapelle',
datum: DateFormat('dd.MM.yyyy').format(DateTime.now()),
description: 'Kapelle bei der Ausfahrt von Oggau', description: 'Kapelle bei der Ausfahrt von Oggau',
image: Image.network('https://upload.wikimedia.org/wikipedia/commons/d/d7/Oggau_Rosaliakapelle.JPG'), image: Image.network('https://upload.wikimedia.org/wikipedia/commons/d/d7/Oggau_Rosaliakapelle.JPG'),
), ),
UserDefinedItem( UserDefinedItem(
title: 'Rosalia Kapelle', title: 'Rosalia Kapelle',
datum: DateFormat('dd.MM.yyyy').format(DateTime.now()),
description: 'Kapelle bei der Ausfahrt von Oggau', description: 'Kapelle bei der Ausfahrt von Oggau',
image: Image.network('https://upload.wikimedia.org/wikipedia/commons/d/d7/Oggau_Rosaliakapelle.JPG'), image: Image.network('https://upload.wikimedia.org/wikipedia/commons/d/d7/Oggau_Rosaliakapelle.JPG'),
), ),
UserDefinedItem( UserDefinedItem(
title: 'Rosalia Kapelle', title: 'Rosalia Kapelle',
datum: DateFormat('dd.MM.yyyy').format(DateTime.now()),
description: 'Kapelle bei der Ausfahrt von Oggau', description: 'Kapelle bei der Ausfahrt von Oggau',
image: Image.network('https://upload.wikimedia.org/wikipedia/commons/d/d7/Oggau_Rosaliakapelle.JPG'), image: Image.network('https://upload.wikimedia.org/wikipedia/commons/d/d7/Oggau_Rosaliakapelle.JPG'),
), ),
UserDefinedItem( UserDefinedItem(
title: 'Gemeinde Amt Oggau', title: 'Gemeinde Amt Oggau',
datum: DateFormat('dd.MM.yyyy').format(DateTime.now()),
description: 'Gemeide Amt der Marktgemeinde Oggau. SPÖ regierend', description: 'Gemeide Amt der Marktgemeinde Oggau. SPÖ regierend',
image: Image.network('https://upload.wikimedia.org/wikipedia/commons/a/a1/Oggau_am_Neusiedler_See_-_Gemeindeamt_%2801%29.jpg'), image: Image.network('https://upload.wikimedia.org/wikipedia/commons/a/a1/Oggau_am_Neusiedler_See_-_Gemeindeamt_%2801%29.jpg'),
), ),
@@ -149,26 +177,26 @@ class IssueList extends StatelessWidget {
Widget build(BuildContext context) { Widget build(BuildContext context) {
final UserDefinedItem item1 = UserDefinedItem( final UserDefinedItem item1 = UserDefinedItem(
title: 'Licht ausgebrannt', title: 'Licht ausgebrannt',
datum: DateFormat('dd.MM.yyyy').format(DateTime.now()),
description: 'Licht ist ausgebrannt in der Sebastianstraße', description: 'Licht ist ausgebrannt in der Sebastianstraße',
image: Image.network('https://api.ebsg.at/uploads/immo70/originals/objekt_809_oggau-am-neusiedler-see_7063_6021.jpeg',), image: Image.network('https://api.ebsg.at/uploads/immo70/originals/objekt_809_oggau-am-neusiedler-see_7063_6021.jpeg',),
); );
final UserDefinedItem item2 = UserDefinedItem( final UserDefinedItem item2 = UserDefinedItem(
title: 'test2', title: 'test2',
datum: DateFormat('dd.MM.yyyy').format(DateTime.now()),
description: 'Gemeide Amt der Marktgemeinde Oggau. SPÖ regierend', description: 'Gemeide Amt der Marktgemeinde Oggau. SPÖ regierend',
image: Image.network('https://upload.wikimedia.org/wikipedia/commons/a/a1/Oggau_am_Neusiedler_See_-_Gemeindeamt_%2801%29.jpg'), image: Image.network('https://upload.wikimedia.org/wikipedia/commons/a/a1/Oggau_am_Neusiedler_See_-_Gemeindeamt_%2801%29.jpg'),
); );
//addUDI(item1); //addUDI(item1);
//addUDI(item2); //addUDI(item2);
return ListView( return ListView(
children: _items.map((item) => UserDefinedItem( children: _items.map((item) => UserDefinedItem(
title: item.title, title: item.title,
datum: item.datum,
description: item.description, description: item.description,
image: item.image, image: item.image,
), ),
).toList(), ).toList(),
); );
} }
} }
+19 -11
View File
@@ -82,10 +82,10 @@ packages:
dependency: transitive dependency: transitive
description: description:
name: flutter_plugin_android_lifecycle name: flutter_plugin_android_lifecycle
sha256: "4bef634684b2c7f3468c77c766c831229af829a0cd2d4ee6c1b99558bd14e5d2" sha256: c224ac897bed083dabf11f238dd11a239809b446740be0c2044608c50029ffdf
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.0.8" version: "2.0.9"
flutter_test: flutter_test:
dependency: "direct dev" dependency: "direct dev"
description: flutter description: flutter
@@ -116,34 +116,34 @@ packages:
dependency: "direct main" dependency: "direct main"
description: description:
name: image_picker name: image_picker
sha256: "22207768556b82d55ec70166824350fee32298732d5efa4d6e756f848f51f66a" sha256: f202f5d730eb8219e35e80c4461fb3a779940ad30ce8fde1586df756e3af25e6
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.8.6+3" version: "0.8.7+3"
image_picker_android: image_picker_android:
dependency: transitive dependency: transitive
description: description:
name: image_picker_android name: image_picker_android
sha256: "68d067baf7f6e401b1124ee83dd6967e67847314250fd68012aab34a69beb344" sha256: "1ea6870350f56af8dab716459bd9d5dc76947e29e07a2ba1d0c172eaaf4f269c"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.8.5+7" version: "0.8.6+7"
image_picker_for_web: image_picker_for_web:
dependency: transitive dependency: transitive
description: description:
name: image_picker_for_web name: image_picker_for_web
sha256: "66fc6e3877bbde82c33d122f3588777c3784ac5bd7d1cdd79213ef7aecb85b34" sha256: "98f50d6b9f294c8ba35e25cc0d13b04bfddd25dbc8d32fa9d566a6572f2c081c"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.1.11" version: "2.1.12"
image_picker_ios: image_picker_ios:
dependency: transitive dependency: transitive
description: description:
name: image_picker_ios name: image_picker_ios
sha256: "39aa70b5f1e5e7c94585b9738632d5fdb764a5655e40cd9e7b95fbd2fc50c519" sha256: a1546ff5861fc15812953d4733b520c3d371cec3d2859a001ff04c46c4d81883
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.8.6+9" version: "0.8.7+3"
image_picker_platform_interface: image_picker_platform_interface:
dependency: transitive dependency: transitive
description: description:
@@ -152,6 +152,14 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.6.3" version: "2.6.3"
intl:
dependency: "direct main"
description:
name: intl
sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d"
url: "https://pub.dev"
source: hosted
version: "0.18.1"
js: js:
dependency: transitive dependency: transitive
description: description:
@@ -279,4 +287,4 @@ packages:
version: "2.1.4" version: "2.1.4"
sdks: sdks:
dart: ">=2.18.2 <3.0.0" dart: ">=2.18.2 <3.0.0"
flutter: ">=3.0.0" flutter: ">=3.3.0"
+1
View File
@@ -37,6 +37,7 @@ dependencies:
# Use with the CupertinoIcons class for iOS style icons. # Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^1.0.2 cupertino_icons: ^1.0.2
image_picker: ^0.8.6+3 image_picker: ^0.8.6+3
intl: ^0.18.1
dev_dependencies: dev_dependencies:
flutter_test: flutter_test: