0

我的 rootViewController 顶部有一个 UIImageView(顺便说一下,我正在使用情节提要)并且我希望我的应用程序,无论何时从睡眠状态开始,都可以在 rootViewController 顶部显示该视图。

application:didFinishWithLaunchOptions该视图实际出现之后,因为它在情节提要上属于它,但是每当它从睡眠中醒来并进入 rootViewController 时,它就永远不会显示

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

4

1 回答 1

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
}
于 2012-07-18T15:49:28.317 回答