ios - 如何知道应用程序启动时呈现哪个 View Controller

标签 ios objective-c viewcontroller

情况是:

  • 应用程序在后台运行
  • 用户点击图标应用
  • 应用程序打开并显示 View Controller 上次应用程序进入后台之前所在的位置。

我想知道将要呈现哪个 View Controller 。我正在寻找类似的东西:

- (void)applicationDidBecomeActive:(UIApplication *)application {
    if ([self.window.viewControllerOnScreen isKindOfClass:[HomeViewController class]]) {
        //do sthg
    }
}

因为以防万一,它是主视图 Controller (嵌入导航 Controller 并且我使用 Storyboard),我将执行一些重新加载方法。

最佳答案

[[self.navigationController viewControllers] lastObject];

第一部分将为您提供堆栈上所有 View Controller 的数组,最后一个对象是当前显示的对象。检查它的类类型,看看它是否是 homeViewController

关于ios - 如何知道应用程序启动时呈现哪个 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20971110/

相关文章:

iphone - iOS。为 HTTP 聊天客户端从服务器(动态间隔)提取数据的最佳方式?

objective-c - 多线程从何而来?

ios - 如何快速更改标签的位置

iphone - 从月份名称获取月份编号?

ios - 为什么 UIActionSheet 在呈现时是透明的?

ios - 如何从swiftui View 调用uikit viewcontroller方法

iphone - 如何清除在 Xcode 中创建的 plist 中的数据?

ios - iPhone:如何使用 Xcode 向 Web 服务发送 HTTP 请求

ios - PushViewController 崩溃

ios - 如何创建小型 tableView Controller ?