我正在创建新页面路由PopupRoute
,并使用Stack
作为新弹出页面的根。直到我将Text
添加到其子级之前,它都可以正常工作。文本下面会有两条黄线。我尝试了Material(child:Stack())
和Scaffold(child:Stack())
。它可以解决黄线问题,但可以覆盖整个屏幕,并使barrierDismissible 不起作用。是否有人知道其他小部件可以解决我的情况下的文本黄色问题?非常感谢。
答案 0 :(得分:1)
可能有一个更干净的解决方案,但我想到的第一件事是将Material
包装在Align
小部件中。
例如
showDialog(context: context, barrierDismissible: true, builder: (context) {
return Stack(alignment: Alignment.center, fit: StackFit.loose, children: <Widget>[
Container(width: 100, height: 100, color: Colors.blue),
Align(
child: Material(
type: MaterialType.transparency,
child: Text("TEXT"),
)
),
]);
});
答案 1 :(得分:1)
您只需要将Text
小部件包装在DefaultTextStyle
小部件内。 DefaultTextStyle
或Scaffold
小部件会隐式添加一个Material
小部件。
DefaultTextStyle(
style: TextStyle(),
child: Text("This is a test"),
),