2012-07-18 64 views
0

我在我的rootViewController上有一个UIImageView(我只是用这种方式使用故事板),并且我希望我的应用程序(无论何时来自睡眠)在RootViewController上显示该视图。如何让appDidBecomeActive显示rootViewController的视图?

application:didFinishWithLaunchOptions是查看后实际上出现,因为它属于它的故事板,但每当它从睡眠中醒来,去到RootViewController的,它永远不会显示

我猜viewWillAppear不叫,这是为什么?

+0

具有u试图通知RootViewController的,当应用程序被激活与UINotification的方法? – MrBr 2012-07-18 15:43:10

回答

3

因为在应用程序变为活动状态时执行某些操作,所以依靠viewWillAppear或DidAppear来执行操作并不安全。它最好添加一个观察者到应用程序的rootviewcontroller中,确实成为活动通知。

在viewDidLoad中添加这是你的根视图控制器

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

,并确保落实

-(void)methodToShowViewOnTop{ 
       // code that puts the view on top 
}