2011-05-20 85 views
1

因此,我在这个iPAd应用程序,我正在测试大约4视图控制器。在应用程序变为非活动状态之前,TableViewController是presnet。当我按下iPhone上的按钮,它会引发如何恢复过程applicationDidBecomeActive

-(void)applicationWillResignActive:(UIApplication *)application 

当我重新开始,我希望应用程序恢复与过程,与加载的表,并显示“屏幕”之前可用我按下了按钮。

我可以理解,

-(void)applicationDidBecomeActive:(UIApplication *)application 

参与了本次活动。你能告诉我如何实际上带来一个特定的视图控制器的事件恢复过程??

谢谢。

+0

applicationWillResignActive不应该以手工方式调用。这是一个回调,当你按主页按钮退出一个应用程序,然后进入多任务模式时,它会自动调用。你到底想要做什么?如果你详细地说一下,这里的某个人将能够帮助实施一个更清洁的解决方案,它将以正确的方式处理事情:) .... – Sid 2011-05-20 17:30:40

+0

@Siddharth艾尔:对不起人。我是StackOverflow的新手 - 我不知道我需要接受答案......对此抱歉。我编辑了问题并添加了关于表视图控制器的信息。 – Legolas 2011-05-20 17:36:04

+0

你不需要抱歉!我只是很好,并让你知道之前有人烧你大声笑.... – Sid 2011-05-20 17:39:16

回答

5

你可以注册你自己的UIViewControllers作为'UIApplicationDidBecomeActiveNotification的观察者。

在您的视图控制器:

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

不要忘记删除它们作为观察员在自己的dealloc方法:

- (void)dealloc { 
    ... 
    [[NSNotificationCenter defaultCenter] removeObserver:self name:UIApplicationDidBecomeActiveNotification object:nil]; 
    [super dealloc]; 
} 
+0

你也可以把代码dealloc? – Legolas 2011-05-20 17:44:43

+0

用删除观察者的代码更新。 – hwaxxer 2011-05-20 17:51:50

+0

我可以将所有UIViewControllers注册为观察者,并同时返回所有UIViewController吗? – Legolas 2011-05-20 17:58:24