mobileApplicationsKonectarApp/lib/views/notification_screen.dart

238 lines
7.6 KiB
Dart

import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
class NotificationCustomScreen extends StatefulWidget {
const NotificationCustomScreen({super.key});
@override
State<NotificationCustomScreen> createState() =>
_NotificationCustomScreenState();
}
class _NotificationCustomScreenState extends State<NotificationCustomScreen> {
List<TableRow> tableDataRows = <TableRow>[
const TableRow(
children: [
TableCell(
child: Text('Row 1, Column 1'),
),
TableCell(
child: Text('Row 1, Column 2'),
),
],
),
const TableRow(
children: [
TableCell(
child: Text('Row 2, Column 1'),
),
TableCell(
child: Text('Row 2, Column 2'),
),
],
),
const TableRow(
children: [
TableCell(
child: Text('Row 3, Column 1'),
),
TableCell(
child: Text('Row 3, Column 2'),
),
],
),
const TableRow(
children: [
TableCell(
child: Text('Row 4, Column 1'),
),
TableCell(
child: Text('Row 4, Column 2'),
),
],
),
const TableRow(
children: [
TableCell(
child: Text('Row 5, Column 1'),
),
TableCell(
child: Text('Row 5, Column 2'),
),
],
),
];
@override
Widget build(BuildContext context) {
var headers = ["Start date", "End date", "Note", "Created by"];
var list = [
{
'Start date': "06/09/2023",
"End date": "11/10/2023",
"notification": "Test notifications",
"createdby": "Sneha"
},
{
'Start date': "06/09/2023",
"End date": "11/09/2023",
"notification": "Test notifications",
"createdby": "Sneha"
},
];
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Notifications'),
backgroundColor: Color.fromARGB(255, 11, 60, 144),
),
body: Padding(
padding: const EdgeInsets.all(20.0),
child: Center(
child: Column(
children: [
Table(
border: TableBorder.all(color: Colors.black),
columnWidths: {
0: FixedColumnWidth(
MediaQuery.of(context).size.height * 0.30),
1: FixedColumnWidth(
MediaQuery.of(context).size.height * 0.30),
2: FixedColumnWidth(
MediaQuery.of(context).size.height * 0.30),
3: FixedColumnWidth(
MediaQuery.of(context).size.height * 0.30)
},
children: [
// for (var item in headers)
TableRow(children: [
Padding(
padding: const EdgeInsets.all(8.0),
child: Center(
child: Text(
headers[0],
style: const TextStyle(fontSize: 18.0),
),
),
),
Padding(
padding: const EdgeInsets.all(8.0),
child: Center(
child: Text(
headers[1],
style: const TextStyle(fontSize: 18.0),
),
),
),
Padding(
padding: const EdgeInsets.all(8.0),
child: Center(
child: Text(
headers[2],
style: const TextStyle(fontSize: 18.0),
),
),
),
Padding(
padding: const EdgeInsets.all(8.0),
child: Center(
child: Text(
headers[3],
style: const TextStyle(fontSize: 18.0),
),
),
),
// Text(item[1]),
// Text(item[2]),
])
]),
Table(
border: TableBorder.all(color: Colors.black),
columnWidths: {
0: FixedColumnWidth(
MediaQuery.of(context).size.height * 0.30),
1: FixedColumnWidth(
MediaQuery.of(context).size.height * 0.30),
2: FixedColumnWidth(
MediaQuery.of(context).size.height * 0.30),
3: FixedColumnWidth(
MediaQuery.of(context).size.height * 0.30)
},
children: [
for (var item in list)
TableRow(children: [
Padding(
padding: const EdgeInsets.all(8.0),
child: Text(
item['Start date']!,
style: TextStyle(fontSize: 18.0),
),
),
Padding(
padding: const EdgeInsets.all(8.0),
child: Text(
item['End date']!,
style: TextStyle(fontSize: 18.0),
),
),
Padding(
padding: const EdgeInsets.all(8.0),
child: Text(
item['notification']!,
style: TextStyle(fontSize: 18.0),
),
),
Padding(
padding: const EdgeInsets.all(8.0),
child: Text(
item['createdby']!,
style: TextStyle(fontSize: 18.0),
),
),
])
]),
],
),
),
),
floatingActionButton: FloatingActionButton(
backgroundColor: Color.fromARGB(255, 11, 60, 144),
onPressed: () {
setState(() {
// Update the list of table data rows
tableDataRows = [
const TableRow(
children: [
TableCell(
child: Text('Row 1, Column 1 (updated)'),
),
TableCell(
child: Text('Row 1, Column 2 (updated)'),
),
],
),
const TableRow(
children: [
TableCell(
child: Text('Row 2, Column 1 (updated)'),
),
TableCell(
child: Text('Row 2, Column 2 (updated)'),
),
],
),
];
});
},
child: Icon(Icons.refresh),
),
),
);
}
}