You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
949 B

import 'package:flutter/material.dart';
class TableView extends StatelessWidget {
final Map<String, dynamic> map;
const TableView({Key key, @required this.map}) : super(key: key);
Widget _buildTableTitle(String title) {
return Padding(
padding: EdgeInsets.all(5),
child: Text(title),
);
}
Map<String, dynamic> get _map => map ?? {};
@override
Widget build(BuildContext context) {
return Table(
border: TableBorder(horizontalInside: BorderSide(color: Colors.black12)),
children: [
TableRow(
children: [
_buildTableTitle('KEY'),
_buildTableTitle('VALUE'),
],
),
..._map.entries
.map((e) => TableRow(
children: [
_buildTableTitle(e.key),
_buildTableTitle(e.value.toString()),
],
))
.toList(),
],
);
}
}