当我的 ViewController 嵌入到 UINavigationController 中时,如何继续值?

How do I segue values when my ViewController is embedded in an UINavigationController?

我有两个视图控制器,它们通过 segues 和 prepareForSegue 方法来回发送值。在我决定将我的 ViewController 嵌入导航控制器之前,这对我来说一直很完美。

如果您查看下面的方法,您会发现问题是我的目的地ViewController不再是ViewController...这是我的新目的地创建了 UINavigationController。

TimeViewController.swift(二级控制器)

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {

        var dest = segue.destinationViewController as! ViewController
        var min = selectedMinute * 60
        output = min + selectedSecond

        dest.returnedLabel = recievedString

        if cancelled == true {
            dest.returnedValue = 0
        } else {
            dest.returnedValue = output
        }

    }

一旦我的 ViewController 嵌入到 UINavigationController 中,我就会收到此错误:

Could not cast value of type 'UINavigationController' (0x1088ff698) to 'deleteCoreData.ViewController' (0x106a1f9b0).

因此,如果我将目标ViewController 转换为 UINavigationController,我将失去对之前拥有的变量的访问权限。这些变量是我在控制器之间保存数据的方式。

所以我的问题是:

当我的 ViewController 嵌入到 UINavigationController 中时,如何搜索值?

更新:这是我的故事板的样子...

将其转换为 ViewController 对我来说效果很好。

var dest = segue.destinationViewController as! ViewController

你的 segue 连接应该是: