applicationDidBecomeActive保持登录状态类似于instagram

时间:2016-03-23 22:27:55

标签: ios swift view uiviewcontroller appdelegate

我正在寻找的是一种机制,可以在每次应用程序变为后台或不活动时让我的应用程序重置为根视图控制器。有许多应用程序以这种方式运行,即Instagram,eBay等。

我的直觉最初告诉我要进入AppDelegate的applicationWillEnterForeground方法,在那里我会尝试呈现我之后的视图控制器,但是当我实例化viewController时,我可以呈现它,但没有通常在那里的导航控制器。

这让我觉得我需要保存"状态"应用程序(可能是NavigationController的堆栈?)然后在重新启动时以某种方式恢复堆栈。

我已经看过每个事件的执行时间,并注意到关闭应用程序并重新启动它将启动应用程序。我假设我的NSUserDefaults仍然存在,因此可以检查登录用户。这可以帮助确定导航控制器中的哪个视图要推送到(登录或仪表板)。

非常感谢任何方向。

这篇文章中最明显的答案是使用一些存储(NSUserDefaults)来存储跨用途的持久数据。

对于我的具体情况,这是存储一个持有用户信息的密钥。然后当应用程序加载时,将出现可能的第一个视图,但如果缺少该键,将以模态方式拉出前面的登录视图。

1 个答案:

答案 0 :(得分:0)

为此,我将使用NSUserDefaults存储应用程序的当前视图,然后在应用程序完成启动时切换到该视图。请参阅此问题的答案:Swift: How to store user preferences?