如何在颤振中使用嵌套的 WillPopScope

Posted

技术标签:

【中文标题】如何在颤振中使用嵌套的 WillPopScope【英文标题】:How to use nested WillPopScope in flutter 【发布时间】:2019-12-10 09:42:54 【问题描述】:

在我的应用程序中,我有一个 WillPopScope 小部件包裹根 Scaffold,以防止用户意外退出应用程序。此外,我在 Scaffold 内有一个带有搜索按钮的应用栏,单击该按钮将在应用栏中显示搜索输入(类似于 whatsapp 搜索)。切换搜索时,我希望按下后退按钮退出搜索,因此我用另一个 WillPopScope 包装了我的搜索输入,期望最里面的 WillPopScope 将控制并退出搜索,但是当嵌套了多个 WillPopScope 小部件时,控制总是给最外面的一个。有没有办法让控件进入最里面的 WillPopScope。

【问题讨论】:

【参考方案1】:

您可以在 AppBar 搜索栏中使用 leading: IconButton(...)

这会覆盖后退按钮,因此您不需要内部 WillPopScope。

【讨论】:

我已经有一个退出搜索的前导按钮,但我也希望通过按下后退按钮来获得相同的功能。我相信这会比 AppBar 中的后退按钮提供更好的用户体验。

以上是关于如何在颤振中使用嵌套的 WillPopScope的主要内容,如果未能解决你的问题,请参考以下文章

在 Flutter 中使用带有 WillPopScope 的嵌套导航器

颤振:如何在按下后退按钮时不退出应用程序

如何在颤振本地化中读取嵌套的 json?

滑动以返回在 ios 中的颤振 webview 中不起作用

Flutter中如何使用WillPopScope

Flutter中如何使用WillPopScope