首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何检查我们从哪个视图控制器到另一个视图控制器

在iOS开发中,我们可以通过以下几种方式来检查我们从哪个视图控制器跳转到另一个视图控制器:

  1. 使用segue跳转:在Storyboard中,我们可以通过拖拽控件或者手动创建segue来实现视图控制器之间的跳转。在跳转前,我们可以通过prepare(for:sender:)方法获取源视图控制器和目标视图控制器,可以通过源视图控制器的self属性来获取当前的视图控制器。
代码语言:swift
复制
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if let sourceViewController = self as? SourceViewController {
        if let destinationViewController = segue.destination as? DestinationViewController {
            // 在这里可以获取到源视图控制器和目标视图控制器
        }
    }
}
  1. 使用导航控制器:如果我们使用导航控制器管理视图控制器的跳转,可以通过导航控制器的viewControllers属性获取当前的视图控制器栈,从而获取当前的视图控制器。
代码语言:swift
复制
if let viewControllers = navigationController?.viewControllers {
    if let currentViewController = viewControllers.last {
        // 获取当前的视图控制器
    }
}
  1. 使用present跳转:如果我们使用present方法进行视图控制器的跳转,可以通过presentingViewController属性获取源视图控制器,通过presentedViewController属性获取目标视图控制器。
代码语言:swift
复制
if let sourceViewController = presentingViewController as? SourceViewController {
    if let destinationViewController = presentedViewController as? DestinationViewController {
        // 获取源视图控制器和目标视图控制器
    }
}

以上是常用的几种方式来检查从哪个视图控制器跳转到另一个视图控制器的方法。具体使用哪种方式取决于你的项目架构和需求。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券