我显示一个CupertinoPopupSurface
并使用一个Dismissible
小部件通过手势关闭对话框。当我向下滑动时,我调用 Navigator.of(context).pop();
以关闭对话框并返回到上一个屏幕,但我得到了错误,它说Dismissible
仍然是树的一部分。
我尝试提供一个唯一的密钥Dismissible(key: UniqueKey(), ...)
,但它仍然无法正常工作。
CupertinoPopupSurface(
isSurfacePainted: false,
child: Container(
padding: const EdgeInsets.only(top: 100),
child: Dismissible(
key: UniqueKey(),
direction: DismissDirection.down,
onDismissed: (direction) {
Navigator.of(context).pop();
},
child: Container(
decoration: BoxDecoration(
borderRadius:
BorderRadius.vertical(top: Radius.circular(40)),
),
child: ZoneFilter(
visit: visit, accountsViewModel: accountsViewModel)),
),
),
);
我想打电话Navigator.of(context).pop();
并摆脱 Dismissible 小部件。