我想做一个定制的Flutter 步进机.我复制了stepper的实现.dart,将我的文件保存到我自己的lib文件夹,并修复导入以删除错误.

import 'package:flutter/src/material/button_theme.dart';
import 'package:flutter/src/material/colors.dart';
import 'package:flutter/src/material/debug.dart';
import 'package:flutter/src/material/flat_button.dart';
import 'package:flutter/src/material/icons.dart';
import 'package:flutter/src/material/ink_well.dart';
import 'package:flutter/src/material/material.dart';
import 'package:flutter/src/material/material_localizations.dart';
import 'package:flutter/src/material/theme.dart';
import 'package:flutter/src/material/typography.dart';

错误被删除,但是DART说"不要从另一个包导入实现文件".

我能知道继续进行是否安全吗?或者有没有其他方法来实现自定义小部件?或者我应该转移自定义步进文件的位置?谢谢

推荐答案

Flutter 动material 构件不应细分为子类.下面是我为创建自定义版本的小部件所做的工作:

(1) 找到原始小部件的源文件,并将其复制到项目的lib目录中.

(2)从复制的文件中删除所有导入语句,并插入行
改为import 'package:flutter/material.dart';

(3) 判断Dart分析是否有丢失的Package.要添加这些内容,请单击复制的源文件中的未知(红色下划线)类名,然后点击ALT+Enter并 Select 提供添加缺少的依赖项的上下文菜单项.

(4)现在根据您的喜好修改Widget.

(5) 要在项目中使用修改后的小部件,请按如下方式导入:

(6)您现在可以访问修改后的步进器,如下所示
my.Stepper stepper = my.Stepper(...);

Dart相关问答推荐

dart 中的 Function() 和 Function 有什么区别?

如何为屏幕设置不同的主题?

在启用 null 安全性的情况下,如何在 Iterable.firstWhere 中从 orElse 返回 null?

什么时候在 Dart 中使用interfaces接口?

Flutter tabview刷新问题

在polymer和dart中将内容标签渲染为模板的一部分

运行时出现Flutter错误:Error waiting for a debug connection: Bad state: No element

Flutter DatePicker 没有day选项

如何计算列表中元素的出现次数

如何防止键盘在Flutter中按提交键时失效?

如何限制TextSpan小部件的文本长度

多级异步代码中的 Dart 错误

如何编辑 Flutter 的 TextFormField 输入和 errorText 之间的间距

如何在组件类中获取 ngForm 变量引用?

如何正确管理 Flutter 应用中的全局 textScaleFactor?

对该常量表达式的求值会抛出一个表达式

为什么 Dart 有编译时常量?

如何使用 Dart 和 web 以 60fps 的速度驱动动画循环?

Dart 中 Promise.all 的类比?

如何从 Dart 中的列表中获取随机元素?