我在我的应用程序中创建了一系列的模态底表。当我从A模态底部表单到B模态底部表单,然后A模态底部表单应该被关闭,我不知道如何实现这一点,当我使用navigator.pop时,然后它导航到A底部表单。
navigator.pop
o0lyfsai1#
在进入B底部工作表之前,您应该调用Navigator.pop示例:
InkWell( onTap: () { showModalBottomSheet( context: context, builder: (context) { return InkWell( onTap: () { Navigator.of(context).pop(); showModalBottomSheet( context: context, builder: (context) { return const Text("Bottom Sheet B"); }); }, child: const Text("Bottom Sheet A")); }); }, child: const Text("Home"), ),
niknxzdl2#
您可以在关闭时简单地返回工作表A的状态。基于打开的表B。示例:
InkWell( child: Text('Press me'), onTap: () async { final result = await showModalBottomSheet( context: context, builder: (context) => InkWell( child: Text('Open SHeet B'), onTap: () => Navigator.pop(context, true), ), ); print(result); if (mounted && result == true) { showModalBottomSheet( context: context, builder: (context) => InkWell( child: Text('CLose SHeet B'), onTap: () => Navigator.pop(context, true), ), ); } }, ),
2条答案
按热度按时间o0lyfsai1#
在进入B底部工作表之前,您应该调用Navigator.pop
示例:
niknxzdl2#
您可以在关闭时简单地返回工作表A的状态。基于打开的表B。
示例: