You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

导入dart:ui后仍报Undefined name 'ui'错误该如何解决

Flutter ui.Gradient.linear 未定义报错修复方案
  • 报错根本原因:你导入dart:ui库时未声明ui别名,导致代码中使用ui.前缀调用库API时无法识别标识符。
  • 修复方法:将导入语句import 'dart:ui';修改为import 'dart:ui' as ui;即可。
  • 可选替代方案:如果你不想使用前缀调用,也可以直接删除代码中Gradient.linear前的ui.前缀,直接写Gradient.linear也能正常运行,推荐使用别名方式避免不同库的同名类冲突。

修正后完整代码

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:html_editor_enhanced/html_editor.dart';
import 'dart:ui' as ui; // 此处添加了as ui别名

class Write extends StatelessWidget {
  // const Write({Key? key}) : super(key: key);

  HtmlEditorController controller = HtmlEditorController();

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Column(
        children: [
          Text(
              "write or copy/paste your beautiful creation",
              style: TextStyle(
                  height:5,
                  foreground: Paint()
                      ..shader = ui.Gradient.linear(
              const Offset(0, 20),
              const Offset(150, 20),
              <Color>[
                Colors.red,
                Colors.yellow,
              ],
            ))),
          const SizedBox(height: 40),
          HtmlEditor(
            controller: controller, //required
            htmlEditorOptions: const HtmlEditorOptions(
              hint: "Your text here...",
              // initialText: "and it came to pass...",
            ),
            otherOptions: const OtherOptions(
              height: 400,
            ),
          ),
        ],
      ),
    );
  }
}

内容的提问来源于stack exchange,提问作者Jaden Lorenc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 17:54:04