Виджет DataTable
Виджет DataTable показывает заголовки колонок и строки
DataRow.
Колонки описывают
DataColumn
в columns,
ячейки - DataCell внутри rows,
сортировку включают через sortColumnIndex и sortAscending.
Синтаксис
DataTable(
columns: [
DataColumn(label: Text('abcde')),
DataColumn(label: Text('12345')),
],
rows: [
DataRow(cells: [
DataCell(Text('11111')),
DataCell(Text('22222')),
]),
],
)
Параметры
| Параметр | Описание |
|---|---|
columns |
Список заголовков колонок. |
rows |
Список строк таблицы. |
sortColumnIndex |
Индекс колонки, по которой идёт сортировка. |
Пример
Давайте выведем таблицу из одной строки:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: SingleChildScrollView(
child: DataTable(
columns: [
DataColumn(label: Text('abcde')),
DataColumn(label: Text('12345')),
],
rows: [
DataRow(cells: [
DataCell(Text('11111')),
DataCell(Text('22222')),
]),
],
),
),
),
),
);
}
На экране заголовки 'abcde' и '12345' и одна строка данных.
Пример
Давайте добавим вторую строку:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: DataTable(
columns: [DataColumn(label: Text('abcde'))],
rows: [
DataRow(cells: [DataCell(Text('12345'))]),
DataRow(cells: [DataCell(Text('11111'))]),
],
),
),
),
);
}
В колонке две ячейки одна под другой.
Смотрите также
-
виджет
PaginatedDataTable,
который делит таблицу на страницы -
класс
DataColumn,
которым задают заголовок колонки -
класс
DataRow,
который описывает одну строку -
класс
DataCell,
которым заполняют ячейку