Ios SWIFT 3:带导航控制器的Segue

Ios SWIFT 3:带导航控制器的Segue,ios,iphone,uinavigationcontroller,segue,uistoryboardsegue,Ios,Iphone,Uinavigationcontroller,Segue,Uistoryboardsegue,我正在尝试将一些值从一个viewcontroller发送到另一个viewcontroller。(全部嵌入NavigationController中)。我可以使用法线视图控制器制作segue,所以总体上我理解segue的想法。我必须用两种不同的方法来做这件事,我遇到了两个不同的问题 第一条路,塞格做对了,但“两次”。我的意思是在segue(我想要)之后,有另一个segue到同一个控制器,但没有导航控制器,也没有我要发送的数据。最后一个viewcontroller上的“后退”按钮将返回到Almost

我正在尝试将一些值从一个viewcontroller发送到另一个viewcontroller。(全部嵌入NavigationController中)。我可以使用法线视图控制器制作segue,所以总体上我理解segue的想法。我必须用两种不同的方法来做这件事,我遇到了两个不同的问题

第一条路,塞格做对了,但“两次”。我的意思是在segue(我想要)之后,有另一个segue到同一个控制器,但没有导航控制器,也没有我要发送的数据。最后一个viewcontroller上的“后退”按钮将返回到AlmostViewController

以下是代码:

第二条路,什么也没发生

ERORC不能强制转换“RevisionApp.AlmostViewController”类型的值 (0x1055d58c0)至“UINavigationController”(0x107669f18)


下面是代码:

对于第一个问题,当使用嵌入式导航控制器时,您不必在点击按钮时创建操作功能。导航控制器为您执行此操作。所以你需要做的事情是:

  • 使用故事板从按钮上断开功能
    b已标记的
  • 删除或注释已标记的函数
    b
    (您不需要它)

  • 问题是18号线。您正试图将
    AlmostViewController
    强制转换为
    UINavigationController
    。像这样直接进入,

    let detailController = segue.destination as! AlmostViewController
    

    让故事板:UIStoryboard=UIStoryboard(名称:“Main”,bundle:nil)

    让nextViewController=storyBoard.InstanceEviewControllerWithiIdentifier(“ViewController2”)作为nextViewController
    self.presentViewController(nextViewController,动画:true,完成:nil)

    @Jakubpawelski欢迎!!很乐意帮忙。我也在学习。请投票表决答案。