实际错误是无法将类型“UIViewController”的值转换为强制类型“UINavigationController”
在我转到我的导航之前,在 View Controller 的代码中。 View Controller 我的准备中有以下代码
override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
if (segue.identifier == "SegueAfterJoin2") {
// NOTE! THIS IS TWEAKED with "as UINavigationController"
var nextViewCont:DashboardNavViewController = segue.destinationViewController as UINavigationController;
// PASS VARS FROM THIS VIEW TO NEXT
nextViewCont.passedPassword_toViewDashboard = passedPassword_toView2
nextViewCont.passedEmail_toViewDashboard = passedUsername_toView2
nextViewCont.passedUsername_toViewDashboard = passedEmail_toView2
nextViewCont.passedFocus_toViewDashboard = selectedFocus
}
}
我的导航。 View Controller 类定义如下:class DashboardNavViewController: UIViewController {
。它应该声明为其他东西吗?
最佳答案
只是替换
var nextViewCont: DashboardNavViewController = segue.destinationViewController as UINavigationController
与
var nextViewCont = segue.destinationViewController as! DashboardNavViewController
如果你想呈现 UINavigationController
那么你的 DashboardNavViewController
必须是 UINavigationController
的子类,它现在是 UIViewController 的子类
所以你不能像你的错误所说的那样将它转换为 UINavigationController
。
你的导航 View Controller 类应该如下所示:
class DashboardNavViewController: UINavigationController {
关于ios - 尝试 Seque 到导航 View Controller 时出错无法将类型 'UIViewController' 的值转换为强制类型 'UINavigationController',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36172766/