【问题标题】:Segue destination returns SWRevealViewController instead of UIViewControllerSegue 目的地返回 SWRevealViewController 而不是 UIViewController
【发布时间】:2017-06-09 15:02:42
【问题描述】:

我正在准备来自 func prepare 的值。问题是应用程序崩溃,因为目的地返回 SWRevealViewController 而不是 UIViewController。我在情节提要上使用 SWRevealViewController。

override func prepare(for segue: UIStoryboardSegue, sender: Any?){
    if (segue.identifier == "Main") {
        let view = (segue.destination as! Main)
        view.expired_login = self.expired_login
    }
}

它在 let view 行崩溃。这是消息

Could not cast value of type 'SWRevealViewController' (0x10afa72a8) to 'JetWayTrade.Main' (0x10afac038).

有没有办法获取 Main 以便我可以设置它的属性?这是故事板图片

【问题讨论】:

  • 错误的 segue 连接/标识符?
  • @vadian 添加了我的故事板图片

标签: ios swift uiviewcontroller swrevealviewcontroller


【解决方案1】:

如果我理解正确,您将希望将目标视图控制器转换为 SWRevealViewController:

override func prepare(for segue: UIStoryboardSegue, sender: Any?){
    if (segue.identifier == "Main") {
        let view = (segue.destination as! SWRevealViewController)
        view.expired_login = self.expired_login
    }
}

如果您希望您的主视图控制器成为目的地,那么您必须检查您的 segue 名称是否在情节提要中正确设置。

【讨论】:

    猜你喜欢
    • 2016-11-17
    • 1970-01-01
    • 1970-01-01
    • 2014-11-23
    • 2015-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-01
    相关资源
    最近更新 更多