Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/102.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 以编程方式从一个viewcontroller切换到另一个viewcontroller_Ios_Swift_Uiviewcontroller_Ios11 - Fatal编程技术网

Ios 以编程方式从一个viewcontroller切换到另一个viewcontroller

Ios 以编程方式从一个viewcontroller切换到另一个viewcontroller,ios,swift,uiviewcontroller,ios11,Ios,Swift,Uiviewcontroller,Ios11,我正在尝试创建一个应用程序,它将以编程方式从一个视图控制器切换到另一个视图控制器。我已经尝试使用以下代码来实现这一点: let secondViewController = self.storyboard?.instantiateViewController(withIdentifier: "EndViwController") as! EndViewController self.navigationController?.pushViewController(EndViewControlle

我正在尝试创建一个应用程序,它将以编程方式从一个视图控制器切换到另一个视图控制器。我已经尝试使用以下代码来实现这一点:

let secondViewController = self.storyboard?.instantiateViewController(withIdentifier: "EndViwController") as! EndViewController
self.navigationController?.pushViewController(EndViewController, animated: true)
但这让我想起了这个错误:

[无法将“EndViewController.type”类型的值转换为预期值 参数类型“UIViewController”]

另外,当我尝试其他代码时:

let timeLineTableVC = EndViewController()
self.present(timeLineTableVC, animated: true, completion: nil)
它在模拟器上给了我一个黑屏,而EndViewController没有出现

最后,当我尝试这一点时:

let storyboard = UIStoryboard(name: "EndViewController", bundle: nil)
let controller = storyboard.instantiateViewController(withIdentifier: "EndViewController")
self.present(controller, animated: true, completion: nil)
它给了我这个错误:

[libc++abi.dylib:以类型为的未捕获异常终止 NSException(lldb)]


您的第一位代码不起作用,因为
EndViewController
是一种类型。您应该将其替换为上面声明的
secondViewController

第二段代码不起作用,因为您正在创建一个“空”EndViewController类型,而没有实例化情节提要视图


我猜第三段代码是失败的,因为你的故事板没有被称为“EndViewController”(除非你已经重命名它)。尝试将其改为“Main”。

您的第一位代码不起作用,因为
EndViewController
是一种类型。您应该将其替换为上面声明的
secondViewController

第二段代码不起作用,因为您正在创建一个“空”EndViewController类型,而没有实例化情节提要视图


我猜第三段代码是失败的,因为你的故事板没有被称为“EndViewController”(除非你已经重命名它)。尝试将其改为“Main”。

不能将类类型传递给pushViewController方法。它应该是一个实例EndViewController@SHISHIRRAMIN那么代码是什么呢?在UIStoryboard名称中,您必须传递您的故事板名称,而不是控制器名称,请交叉验证您的故事板名称和控制器名称,您还必须在EndViewController中指定故事板标识符查看此url@SHISHIRRAMIN我很抱歉问了这个愚蠢的问题,但我正在学习swift,所以我有很多problems@Nilesh好的,非常感谢!不能将类类型传递给pushViewController方法。它应该是一个实例EndViewController@SHISHIRRAMIN那么代码是什么呢?在UIStoryboard名称中,您必须传递您的故事板名称,而不是控制器名称,请交叉验证您的故事板名称和控制器名称,您还必须在EndViewController中指定故事板标识符查看此url@SHISHIRRAMIN我很抱歉问了这个愚蠢的问题,但我正在学习swift,所以我有很多problems@Nilesh好的,非常感谢!没问题,如果这确实解决了您的问题,请随时标记为答案。没问题,如果这确实解决了您的问题,请随时标记为答案。