我想在按下按钮时在屏幕上显示透明的布局。
我尝试过使用Stack,但效果很好,但是当我按下函数内部的按钮时(例如ExercisePage()
),则不会显示叠加层。
当值overlayShouldBeVisible==true
时,覆盖层有效。
但是,从overlayShouldBeVisible
(按钮按下事件)内部更改ExercisePage()
的值,则不会显示叠加层。
Stack(
fit: StackFit.passthrough,
children: <Widget>[
ExercisePage(),
overlayShouldBeVisible==true?new CorrectWrongOverlay(isCorrect) : new Container() ,
],
);
答案 0 :(得分:0)
我不知道您在ExercisePage()中正在做什么,但是我可以给您一些建议。尝试使用值通知程序来更改变量https://api.flutter.dev/flutter/foundation/ValueNotifier-class.html
的值基于overlayShouldBeVisible值,您可以使用if条件显示是否显示CorrectWrongOverlay,而无需在树中放置其他小部件。