Swift:使用导航控制器prepareForSegue [英] Swift : prepareForSegue with navigation controller

查看:142
本文介绍了Swift:使用导航控制器prepareForSegue的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在Swift中开发一个iOS应用程序。

I am developing an iOS application in Swift.

我想使用prepareForSegue函数将视图中的数据发送到另一个。

I want to send data from a view to an other one, using the prepareForSegue function.

但是,我的目标视图前面有一个导航控制器,所以它不起作用。

However, my target view is preceded by a navigation controller, so it doesn't work.

我该怎么办呢?

推荐答案

prepareForSegue 中访问目标导航控制器,然后是顶部:

In prepareForSegue access the target navigation controller, and then its top:

let destinationNavigationController = segue.destination as! UINavigationController
let targetController = destinationNavigationController.topViewController

从目标控制器中,您可以访问其视图和传递数据。

From the target controller you can access its view and pass data.

在旧的 - 现在已经过时 - 版本的Swift和UIKit中,代码略有不同:

In old - now obsolete - versions of Swift and UIKit the code was slightly different:

let destinationNavigationController = segue.destinationViewController as UINavigationController
let targetController = destinationNavigationController.topViewController

这篇关于Swift:使用导航控制器prepareForSegue的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆