【问题标题】:How to create Spreadsheet in Flutter如何在 Flutter 中创建电子表格
【发布时间】:2019-07-27 21:11:45
【问题描述】:

如何在 Flutter 中创建类似 Widget 的 spreadhseet(仅用于显示数据)。

目前我使用过 Datatable 但它不支持 1. 固定标题 2. 可滚动正文。

我想要以下功能:

  1. 应该修复标题。
  2. 正文应该是可滚动的(在两个轴上)

目前我的数据表在一个列内 > Expanded > SingleChildScrollView(horizo​​ntal) > SingleChildScrollView (vertical) > DataTable。虽然我可以在两个方向上滚动整个表格,但 1. 不能同时滚动(即水平或垂直滚动​​),2. 垂直滚动时,标题不应滚动。

我怎样才能做到这一点?

【问题讨论】:

  • 你可以从这个用户的回答中得到一些想法:stackoverflow.com/questions/59709234/…
  • 您可以使用 excel: ^1.1.5 ,这将创建空的 excel 表添加您选择的数据作为已解析的 json ,如果需要进一步解释,我可以帮助您

标签: flutter flutter-layout


【解决方案1】:

您似乎需要允许两个或多个滚动视图同步的滚动控制器。在他的情况下,您可以使用linked_scroll_controller 插件。

您可以按照this blog post 中的示例获取有关如何实现此目的的分步教程。

示例取自博客,查看完整源代码here

【讨论】:

    【解决方案2】:

    这是用于此目的的另一个包:syncfusion_flutter_datagrid

    它有几个特点:

    • 编辑 - 允许用户编辑单元格值。
    • 排序 - 按升序或降序对一列或多列进行排序。
    • 堆叠的标题 - 显示未绑定的标题行。
    • 分页 - 分段加载数据。
    • 冻结窗格 - 滚动网格时冻结行和列。
    • 还有更多,详情请见document

    但是,在这种情况下,同时滚动是不同的功能。

    您可以尝试InteractiveViewer,但在这种情况下不建议这样做。因为InteractiveViewerDataTable 这两个小部件都是非常强大的小部件,可能会产生一些冲突。

    【讨论】:

      猜你喜欢
      • 2021-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-30
      • 2021-08-04
      • 2020-10-20
      • 2013-07-08
      • 1970-01-01
      相关资源
      最近更新 更多