viewWillAppear只被调用一次

时间:2017-08-06 17:21:07

标签: ios cocoa-touch uiviewcontroller

我有以下故事板。有OrderViewController当我第一次打开应用时,会调用-(void) viewWillAppear: (BOOL) animated方法,但是当我打开另一个应用(将此应用放在后台),然后再次回到此应用时, viewWillAppear方法不会被再次调用?

enter image description here

1 个答案:

答案 0 :(得分:5)

当您将视图添加到窗口的视图层次结构时,您发送了viewWillAppear消息。

当应用从后台移动到前台时,窗口的视图层次结构不会发生变化,因此不会为该事件发送消息。

如果您想知道(在您的视图控制器中)您的应用何时到达前台,您应该听取UIApplicationWillEnterForeground通知或UIApplicationWillBecomeActive通知(或两者),具体取决于你的确切需求。

阅读“Strategies for Handling App State Transitions” in the App Programming Guide for iOS,了解有关何时发送这些通知的详细信息。