我在我的rootViewController之上有一个UIImageView(我只是顺便使用了故事板),我希望我的应用程序,无论何时来自睡眠,都要在rootViewController上显示该视图。
在application:didFinishWithLaunchOptions
视图实际出现之后,因为它在故事板上属于它,但是当它从睡眠中唤醒并转到rootViewController时,它永远不会显示
我想viewWillAppear
没有被调用,为什么会这样?
答案 0 :(得分: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
}