从主页/本地通知加载应用程序时如何运行代码?

时间:2016-05-28 23:03:20

标签: ios cocoa-touch uikit

当我通过xcode运行应用程序时,然后转到主屏幕并通过本地通知或按下图标重新加载应用程序,我的viewDiDLoad中的代码不会运行,只有当应用程序被终止并完全重新加载时。

我基本上希望每次加载应用时应用都是新鲜的。如何在不杀死应用程序的情况下加载初始视图的效果?当应用程序从最小化中被拉出时,是否存在某种视图DiD______?

1 个答案:

答案 0 :(得分:0)

当您收到通知并以此方式打开应用时,您会通过AppDelegate中的委托方法获知 - 这里是link文档,其中讨论了获取信息的各种方法和回应它。

你问的是一个单独的问题,因为viewDidLoad在每个控制器的生命周期中只被调用一次。没有办法让它们简单地消失并重新加载。

您可能要做的一个解决方案是在重新启动应用程序时(可以在applicationDidBecomeActive中检测到),然后在控制器的viewWillAppear中设置全局变量,检查该变量并采取措施因此看起来很新鲜(然后使该变量变为假)。

但需要注意的一点是 - 如果有人快速退出您的应用程序(或接收通知),它可能不是一个好的用户体验,并且它会重置为新的。