主应用程序屏幕没有这个问题,所有的文本显示他们应该。

然而,在新屏幕中,所有的文本部件下面都有一些奇怪的黄线/双线。

你知道为什么会这样吗?


当前回答

你应该在main中添加Material和Scaffold部件。飞镖文件

 MaterialApp(
  home: Scaffold(
    body: Text('Hello world'),
  ),
);

其他回答

您所需要做的就是提供一个Material小部件,或者一个内部覆盖这个小部件的Scaffold。你可以通过以下方法做到这一点:

使用材料(简单且更好): 材料( 颜色:颜色。transparent, // <——如果需要,添加这个 孩子:文本(“你好”), ) 设置文本。样式属性: 文本( “你好”, style: TextStyle(decoration: TextDecoration.none), //设置 ) 提供支架: 支架(身体:文本('你好'))


修复使用英雄时黄色文本的问题:

就像aaronvargas提到的,当你在两边使用Hero时,你可以把你的child包在Material中。例如:

Hero(
  tag: 'fooTag',
  child: Material( // <--- Provide Material
    type: MaterialType.transparency,
    child: YourWidget(),
  ),
);

你也可以使用装饰:TextDecoration。无删除下划线

文本有一个隐藏的默认文本样式 .出现问题是因为您不能将此提供给任何父小部件,例如Scaffold。 文本小部件采用默认样式。 对于你的解决方案,你可以像这样改变DefaultTextStyle。

DefaultTextStyle(
    style: TextStyle(),
    child: yourTextWidget,
  );

或者只是包装到脚手架,脚手架是一个小部件。它提供了脚手架 用于应用程序中的页面。 像这样

 MaterialApp(
  home: Scaffold(
    body: Text('Wakey Wakey!'),
  ),
);

要了解更多信息,请浏览这个颤振官方视频。

黄色下划线文本|解码颤振

你应该在main中添加Material和Scaffold部件。飞镖文件

 MaterialApp(
  home: Scaffold(
    body: Text('Hello world'),
  ),
);

问题:你的小部件没有默认的文本样式,

解决办法:把它包起来!

DefaultTextStyle(
    style: TextStyle(),
    child: yourWidget,
  );

记住,如果你不设置任何颜色,默认文本颜色是白色!