重新调用appdelegate applicationdidfinishload

时间:2014-05-02 08:24:26

标签: ios objective-c

在我的代码中,有一个我想回忆起applicationdidfinishload功能的地方,就像重启应用程序一样,这是一种解决方法,因为如果应用程序苹果不喜欢它重新启动。 但无论我尝试什么,我都无法做到......有没有办法这样做?只需通过调用该函数重新加载应用程序......但如何调用它?我从互联网上尝试了几种方法,但没有运气...... 我只是希望从应用程序内部,在另一个视图控制器中,如果我已满足某个条件,则从应用程序委托重新加载applicationDidFinishLoading

1 个答案:

答案 0 :(得分:1)

该方法不负责加载应用。系统加载您的应用程序(使用UIApplicationMain)并告诉您何时使用该委托方法加载应用程序,以便您可以准备应用程序的正常执行(例如设置共享资源,UI元素,外观等) )。

在正常情况下,

UIApplicationMain将永远不会返回,因此您将无法重新启动该应用程序。

如果要重新启动界面方向,一个简单的解决方案是丢弃UIWindow对象并创建一个新对象。 请注意,这是一种糟糕的用户体验!

如果您遇到无法形容的情况,您无法继续执行该应用程序(您不应该遇到这种情况,但最糟糕的情况),您应该通知用户他应该从任务中杀死该应用程序经理并自行重启。