我的flutter应用程序主要是一个标签应用程序。在特定选项卡"Profile“中,我有一个抽屉,显示ListTile以全屏方式”推送“另一个屏幕:
ListTile(
key: Key("ListTile_EDIT_1"),
leading: Icon(Icons.edit),
title: Text('Edit'),
onTap: () async {
await Navigator.push(
context,
MaterialPageRoute(
fullscreenDialog: true,
builder: (context) => EditProfilePage(key: Key("EditProfilePage"), user: user)));
},
),
在此屏幕中,我有一个可解雇的弹出此屏幕的人:
Dismissible(
key: Key('Dismissible_Edit'),
direction: DismissDirection.vertical,
onDismissed: (_) => Navigator.of(context, rootNavigator: true).pop(),
问题是,当弹出时,我有一个中间的黑屏,然后“配置文件”正确显示。
Thx,Nelson
发布于 2020-12-02 09:01:01
尝尝这个
onDismissed: (_) => Navigator.of(context).pop(),
发布于 2020-12-02 09:05:25
你可以这样做:
await Navigator.of(context).push(
PageRouteBuilder(opaque: false, pageBuilder: (context, animation, secondaryAnimation) => EditProfilePage(key: Key("EditProfilePage"), user: user))
);
发布于 2020-12-02 10:56:55
将onDismissed: (_) => Navigator.of(context, rootNavigator: true).pop(),
替换为onDismissed: (_) => Navigator.pop(context, true);
或仅替换此onDismissed: (_) => Navigator.of(context, true).pop(),
https://stackoverflow.com/questions/65104737
复制