【问题标题】:how to Know which screen is on the top(active/mounted)如何知道哪个屏幕在顶部(活动/已安装)
【发布时间】:2019-08-01 09:16:34
【问题描述】:

必须输入带有 pin 屏幕的 Flutter 实现应用程序才能访问应用程序,每次恢复应用程序时都会显示 pin,因此 iam 使用 (didChangeAppLifecycleState) 此处的问题是,如果有诸如 whatsapp 通知之类的应用程序中断pin 显示,这很酷,但是如果有两条消息,我会得到两个 pin 码,所以一个,一旦我得到 27 个 pin 码,我必须输入它们才能恢复应用程序,这一点都不酷

所以这里的问题是,是否有任何方法或方法可以知道哪个屏幕位于堆栈顶部(导航器堆栈)?我的意思是现在对用户可见,所以我不必再次显示 pin,

提前致谢

【问题讨论】:

    标签: dart flutter navigator


    【解决方案1】:

    假设您的 App 中有 3 个页面,分别是 'PageHome'、'Page1'、'PagePin'。那么:

    1. 创建一个文件'GlobalVariables.dart',在这个文件中,创建一个类gv。

    2. 在 gv 类中,创建一个静态变量:

      static String strCurPage = 'PageHome';
      
    3. 在所有 3 个页面中导入此 dart 文件。

    4. 在导航到新页面之前,例如从“PageHome”到“PagePin”,设置:

      gv.strCurPage = 'PagePin';
      
    5. 当应用从后台恢复时,仅当 gv.strCurPage != 'PagePin' 时导航到 'PagePin'。

    【讨论】:

      猜你喜欢
      • 2020-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-16
      • 1970-01-01
      • 1970-01-01
      • 2023-04-05
      相关资源
      最近更新 更多