0

我使用创建了一个表PaginatedDataTable,但现在我想添加列的背景颜色。这是代码

class _PaginationDataTableState extends State<PaginationDataTable> {

  var dts=DTS();
  int rowPerPage=PaginatedDataTable.defaultRowsPerPage;
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.pink,
      body: SafeArea(
        child: SingleChildScrollView(
          child: PaginatedDataTable(
            arrowHeadColor: Colors.red,
            header: Text("Counter data"),
            columns: [
              DataColumn(label: Text("Col 1")),
              DataColumn(label: Text("Col 2")),
              DataColumn(label: Text("Col 3")),
              DataColumn(label: Text("Col 4")),
            ],
            source:dts,
            onRowsPerPageChanged: (r){
              setState(() {
                rowPerPage=r!;
              });
            },
            rowsPerPage:rowPerPage
        
          ),
        ),
      ),
      
    );
  }
}

class DTS extends DataTableSource{

  DataRow getRow(int index){
    return DataRow.byIndex(index:index,cells: [
      DataCell(Text("#cell1$index")),
      DataCell(Text("#cell2$index")),
      DataCell(Text("#cell3$index")),
      DataCell(Text("#cell4$index"))
    ]);
  }

  @override
  // TODO: implement isRowCountApproximate
  bool get isRowCountApproximate => true;

  @override
  // TODO: implement rowCount
  int get rowCount =>100;

  @override
  // TODO: implement selectedRowCount
  int get selectedRowCount => 0;

}

输出:

在此处输入图像描述

如果有人知道如何做到这一点,请提供帮助。

4

1 回答 1

0

试试下面的代码希望它对你有帮助

如果您更改整个表格的背景颜色,请尝试此操作

 Theme(
            data: Theme.of(context).copyWith(
              cardColor: Colors.blue[100],
              dividerColor: Colors.white,
            ),
            child: PaginatedDataTable(),
          ),

您的结果屏幕->图片

于 2021-10-08T19:24:10.510 回答