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

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

你知道为什么会这样吗?


当前回答

您只需要添加Material根小部件。

      @override
       Widget build(BuildContext context) {
      return Material(
         child: new Container(),
        );
       }

其他回答

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

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

还有另一种解决方案,特别是当您使用多个页面包装在main下面时。你可以这样做:

  child: MaterialApp(
    home: Material(child: Wrapper()),
  ),

这将删除在包装器下引用/使用的任何页面中出现的文本下的黄线。

我推荐这种方法,因为你可以做一次,它将覆盖你的整个应用程序。

在MaterialApp的构建器下添加DefaultTextStyle,如下所示:

child: MaterialApp(      
  ...
  ...
  theme: yourThemeData,
  builder: (context, child) => DefaultTextStyle(
    style: yourThemeData.textTheme.bodyText1,
    child: child,
  ),
),

通过这样做,我们不需要每次使用showDialog或Overlay时都指定样式或使用DefaultTextTheme。

您只需要添加Material根小部件。

      @override
       Widget build(BuildContext context) {
      return Material(
         child: new Container(),
        );
       }

你也可以把你的脚手架作为你的MaterialApp的家。这对我很管用。

return MaterialApp(
  home: Scaffold(
    body: Container(
      child: SingleChildScrollView(child: Text('Test')),
    ),
  ),
);