0

我有一个视图控制器,当应用程序退出后台时需要重新加载。我只需要这个单一的视图控制器来完全重新加载。如果应用程序在任何其他视图控制器上处于活动状态,我不需要做任何事情。有任何想法吗?

4

2 回答 2

2

让视图控制器注册UIApplicationWillEnterForegroundNotification通知或UIApplicationDidBecomeActiveNotification.

viewDidLoad你可以这样做:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(foregrounded) name:UIApplicationWillEnterForegroundNotification object:nil];

dealloc您需要注销:

[[NSNotificationCenter defaultCenter] removeObserver:self name:UIApplicationWillEnterForegroundNotification object:nil];

您需要实现该foregrounded方法:

- (void)foregrounded {
    // app now in the foreground - do something
}
于 2013-01-22T00:04:57.047 回答
0

你独特的视图控制器有一个独特的名字吗?

如果不是,则为每个视图控制器添加一个名称。

当应用程序进入后台时,将活动视图控制器的名称保存到NSUserDefaults

当应用程序恢复到前台时,请检查您保存的视图控制器名称。如果这是您独特的视图控制器,请重新加载。

希望这对你有帮助

于 2013-01-22T00:03:32.113 回答