如何创建自定义颤振 sdk 小部件,重建颤振和使用新的小部件

Posted

技术标签:

【中文标题】如何创建自定义颤振 sdk 小部件,重建颤振和使用新的小部件【英文标题】:How to create custom flutter sdk widget, rebuild flutter and use new widget 【发布时间】:2020-09-07 13:59:57 【问题描述】:

我试图弄清楚如何使用我添加的小部件构建自定义颤振 sdk。

背景:我意识到 PaginatedDataTable 需要一个标题(根据这个:https://github.com/flutter/flutter/issues/38604),我想更新该小部件以使其成为可选。

Github 用户 wolfcro1984 有一个拉取请求来做同样的事情:https://github.com/flutter/flutter/pull/26352/files 我想在我当前的颤振版本中使用该代码。但是,我不确定如何在更改之后再次实际构建颤振,以便我可以使用该小部件。

您如何构建 Flutter sdk 以制作自定义的 Flutter 版本?那里有文档吗?

【问题讨论】:

【参考方案1】:

最好的方法是将代码复制到自己的 dart 文件中并进行修改。您可以转到 paginated_data_table.dart,获取所有代码并将其放入您自己的 .dart 文件中。

如何删除标题:

    转到 paginated_data_table.dart(等效) 去掉'header'参数前的@required。 删除assert(header != null) 转到小部件构建方法并删除语义。这是在 cmets 的 CARD 部分下。

我从here拿了一个样本,做了修改,结果是:

我所做的编辑是here。

注意:当您复制自定义小部件中的标准代码时,您需要更改导入部分。

【讨论】:

另外,应该注意的是,它编写的代码在您自己的 dart 文件中不起作用。 "import 'button_bar.dart'; import 'card.dart'; 等的导入都可以替换为 "import 'package:flutter/material.dart';" (以防万一其他人将来在这里绊倒.)

以上是关于如何创建自定义颤振 sdk 小部件,重建颤振和使用新的小部件的主要内容,如果未能解决你的问题,请参考以下文章

如何使用颤振创建自定义弹出菜单

如何使用提供程序包收听更改并在颤振中重建小部件?

颤振:即使使用了`provider`,小部件仍在重建

在颤振中使用最佳方法创建自定义复杂布局?

弃用自定义颤振小部件

如何创建自定义 AppBar 小部件?