【问题标题】:SWIFT 3: Segue with navigation controllerSWIFT 3:使用导航控制器进行 Segue
【发布时间】:2017-03-03 10:32:00
【问题描述】:

我正在尝试将一些值从一个视图控制器发送到另一个。 (全部嵌入 NavigationController)。我可以使用法线视图控制器进行转场,所以总的来说我理解转场的想法。我必须以两种不同的方式做到这一点并遇到两个不同的问题。

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

这里是代码:

第二种方式,什么都没发生,

ErrorCould not cast value of type 'RevisionApp.AlmostViewController' (0x1055d58c0) 到 'UINavigationController' (0x107669f18)。

这里是代码:

【问题讨论】:

    标签: ios iphone uinavigationcontroller segue uistoryboardsegue


    【解决方案1】:

    对于第一个问题,当使用嵌入式导航控制器时,您不必在点击按钮时创建动作函数。导航控制器为您完成。所以你需要做的事情:

    1. 使用 storyBoard 将功能 btnTapped 与按钮断开连接。
    2. 删除或评论函数btnTapped(你不需要)。

    【讨论】:

    • @Jakubpawelski 欢迎!乐意效劳。我也在学习。请为答案投票。
    【解决方案2】:

    问题是第 18 行。您正在尝试将 AlmostViewController 转换为 UINavigationController。直接这样访问,

    let detailController = segue.destination as! AlmostViewController
    

    【讨论】:

      【解决方案3】:

      让 storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)

      让 nextViewController = storyBoard.instantiateViewControllerWithIdentifier("ViewController2") as NextViewController self.presentViewController(nextViewController, 动画:true, 完成:nil)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-12-03
        • 2014-11-23
        • 1970-01-01
        • 2019-01-21
        • 2020-04-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多