我正在使用 Flutter 实现应用程序,必须输入该应用程序才能访问该应用程序,每次您恢复该应用程序时都会显示该应用程序,因此我正在使用(didChangeAppLifecycleState)这里的问题是,如果某些东西中断了应用程序,例如 whatsapp 通知pin 显示,这很酷,但是如果有两条消息出现,我会得到两个 pin 码等一个,一旦我得到 27 个 pin 码,我必须输入它们才能恢复应用程序,这一点也不酷
所以这里的问题是,有没有什么方法或方法可以知道哪个屏幕在堆栈(Navigator Stack)的顶部?我的意思是现在对用户可见,所以我不必再次显示 pin,
提前致谢
最佳答案
假设您的 App 中有 3 个页面,即“PageHome”、“Page1”、“PagePin”。然后:
创建一个文件 'GlobalVariables.dart',在这个文件中,创建一个类 gv。
在 gv 类中,创建一个静态变量:
static String strCurPage = 'PageHome';
在所有 3 个页面中导入此 dart 文件。
导航到新页面之前,例如从 'PageHome' 到 'PagePin',设置:
gv.strCurPage = 'PagePin';
当应用从后台恢复时,仅当 gv.strCurPage != 'PagePin' 时导航至“PagePin”。
关于dart - 如何知道哪个屏幕在顶部(事件/安装),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55095409/