如何打开用户终止应用程序的最后一页?

时间:2019-05-18 18:20:52

标签: flutter

我是新手,我制作了约6-8页的应用程序。我只想从用户离开或完全终止应用程序的最后一个屏幕继续操作。

也可以使用mobx吗?

2 个答案:

答案 0 :(得分:1)

您可以在每次打开新路线时保留路线名称,然后在每次打开应用程序时查找上一条路线:

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title></title>
    <meta name="description" content="">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="icon" type="image/png" sizes="16x16" href="">
</head>

<body>
    <div id="root">
        <!-- html will be auto injected -->
    </div>
    <script src="https://unpkg.com/vue/dist/vue.js"></script>
    <script>
        new Vue({
            el: '#root',
            template: `
            <div>
                <h1>{{ myHeader }}</h1>
                <p>{{ myMessage }}</p>
            </div>
            `,
            data: {
                myHeader: "Welcome!",
                myMessage: 'Built using template literal',  
            },
        });
    </script>
</body>

</html>

请注意,这并不是100%精确的,因为持久化是异步的,用户可以在应用程序完成前关闭它。但是,它通常发生得非常快,并且几乎可以一直工作。

答案 1 :(得分:1)

  1. 声明全局变量gv.strCurPage。

  2. 在每个页面的初始状态下,将gv.strCurPage设置为等于当前页面名称,例如“ page3”。然后,将此值存储到SharePreferences中。

  3. 在main.dart内部main()的最开始,从SharePreference检索该值,并将其存储在gv.strCurPage中,如果该值为空,则设置gv.strCurPage ='page1'。

  4. 在runApp()中,根据gv.strCurPage的值,使用switch语句设置首页。

即当用户首次打开应用程序时,第一页是page1。然后,假设用户导航到page5,则值'page5'将存储在sharepreference中,并在用户下次打开应用程序时检索。因此“ page5”将在下次打开时成为该应用的首页。