【问题标题】:How do I make appDidBecomeActive show the view of rootViewController?如何让 appDidBecomeActive 显示 rootViewController 的视图?
【发布时间】:2012-07-18 15:22:34
【问题描述】:

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

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

我猜viewWillAppear 没有被调用,这是为什么呢?

【问题讨论】:

  • 您是否尝试过在应用程序变为活动状态时通过 UINotification 通知 RootViewController?

标签: ios view viewwillappear


【解决方案1】:

对于在应用程序激活时执行的操作,依赖 viewWillAppear 或 DidAppear 是不安全的。最好将观察者添加到应用程序的 rootviewcontroller 确实成为活动通知。

在你的根视图控制器的 viewDidLoad 上添加这个

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

并确保实现方法

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-10
    • 2013-08-02
    • 1970-01-01
    • 2011-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多