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

Flutter报错:type 'Null' is not a subtype of type 'TextSpan' 求助

解决Flutter中type 'Null' is not a subtype of type 'TextSpan'错误

问题原因

你的italic函数定义时没有返回TextSpan对象,Dart中无显式return的函数默认返回null。当你在RichText的TextSpan.children里调用italic()时,实际传入的是null,而children要求的是TextSpan类型,因此触发类型不匹配错误。

修复方案

给italic函数添加返回逻辑,有两种简洁写法:

方法1:添加return语句

TextSpan italic(String text) {
  return TextSpan(
    text: text,
    style: TextStyle(
      fontSize: 17.0,
      fontStyle: FontStyle.italic,
      color: Colors.black,
    ),
  );
}

方法2:使用箭头函数(更简洁)

TextSpan italic(String text) => TextSpan(
      text: text,
      style: TextStyle(
        fontSize: 17.0,
        fontStyle: FontStyle.italic,
        color: Colors.black,
      ),
    );

修复后,italic()会正确返回TextSpan对象,RichText就能正常渲染文本了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 00:25:32