数据表-使其可滚动,设置背景色并修复/冻结标题行和第一列

时间:2019-04-04 12:03:55

标签: dart flutter

我已经开始在Flutter中使用Webview,图表,表格进行开发,但是遇到表格方面的一些问题。

  1. 我使用 DataTable 表示表中的数据。 有第一个问题。默认情况下,如果数据不在屏幕上,则无法滚动。所以我嵌入了一些小部件(即SingleChildScrollView,ListView),但是它只能在一个方向(垂直或水平)上滚动。我搜索了一下内容,发现了两个方向的插件( bidirectional_scroll_view 0.0.6 )。编译后,我收到一个错误
  

因为应用取决于bidirectional_scroll_view> = 0.0.2   需要SDK版本<2.1.0,版本解析失败。

我正在使用Dart SDK版本:> = 2.1.0 <3.0.0配置中。

接下来,我发现了 PaginatedDataTable ,它可以双向滚动,但它是分页表格。 因此,有人知道有可能沿两个方向(垂直和水平方向)滚动 DataTable 吗?

  1. 第二个问题(更重要):是否可以在表格的标题(第一)行和第一列中设置背景颜色?甚至在表格的任何单元格中都可以?

对于 DataColumn / DataCell ,我尝试将Text嵌入Container中,然后设置Container颜色,但是只为文本设置了背景颜色,其余单元格为默认颜色。

DataColumn(label: Container(child: Text('2011'), color: Colors.grey,)),

enter image description here

  1. 并且可以固定/冻结标题(第一)行和第一列。我的意思是表格已滚动并且第一行/列始终在屏幕上可见。我找不到任何解决方案..

2 个答案:

答案 0 :(得分:0)

Expanded(
  child: ListView(
      children: <Widget>[
        SingleChildScrollView(
            scrollDirection: Axis.horizontal,
            child: DataTable()
        )
      ]
  ),
)

答案 1 :(得分:0)

child: Center(
      child: ListView(
        children: [
          DataTable()
        ],
        scrollDirection: Axis.vertical,
      )
  )