UIApplicationDidBecomeActiveNotification过滤器通知

时间:2013-09-19 05:28:50

标签: ios nsnotificationcenter

我注册了我的主视图控制器以收听UIApplicationDidBecomeActiveNotification因为我想在每次用户输入我的应用时显示UIAlertView

        [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(someMethod:)
                                                 name:UIApplicationDidBecomeActiveNotification
                                               object:nil];

它的工作就像一个魅力,我唯一的问题是如果我的应用程序被中断(通过UIAletView,例如日历事件,或要求图片访问确认的弹出窗口),通知会在警报后被调用视图已被解雇。

关于如何在我的应用程序从后台模式返回时如何检测?

3 个答案:

答案 0 :(得分:2)

为什么不使用AppDelegate方法,

- (void)applicationWillEnterForeground:(UIApplication *)application
{
 //do whatever you want when app comes from background to foreground
}

答案 1 :(得分:1)

我知道这是一个旧线程,但是有一个UIApplicationWillEnterForegroundNotification。像这样工作:

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

致以最诚挚的问候,

Gabriel Tomitsuka

答案 2 :(得分:0)

按照以下代码检查应用程序的状态(活动/背景)

UIApplicationState state = [[UIApplication sharedApplication] applicationState];
if (state == UIApplicationStateActive)
{

        /// your stuff of code:
}

以上代码可能对您的情况有用: