Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.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
Swift 无法以编程方式切换故事板_Swift_Storyboard - Fatal编程技术网

Swift 无法以编程方式切换故事板

Swift 无法以编程方式切换故事板,swift,storyboard,Swift,Storyboard,我试图切换故事板时,一个按钮只有在一个条件(文本字段不是空的)得到满足。我发现这段代码是一个类似问题的答案,但它似乎不起作用。我的程序因“'Storyboard()不包含标识符为'Avatar controller'的视图控制器”而崩溃” 我不完全确定在哪里可以找到视图控制器标识,或者是否必须在情节提要名称的末尾添加“.storyboard” let storyboard = UIStoryboard(name: "Avatar", bundle: nil) let vc = storyboar

我试图切换故事板时,一个按钮只有在一个条件(文本字段不是空的)得到满足。我发现这段代码是一个类似问题的答案,但它似乎不起作用。我的程序因“'Storyboard()不包含标识符为'Avatar controller'的视图控制器”而崩溃”

我不完全确定在哪里可以找到视图控制器标识,或者是否必须在情节提要名称的末尾添加“.storyboard”

let storyboard = UIStoryboard(name: "Avatar", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "Avatar Controller")
        self.navigationController!.pushViewController(vc, animated: true)

发生这种情况有两个原因

1)因为在您的
Avatar.storyboard
中,您正在引用id为
Avatar controller
的视图控制器,但您尚未在脚本文件中的任何视图控制器上设置该值。进入您的
化身。情节提要
,单击要显示的视图控制器并转到此面板:

确保
视图控制器的
情节提要ID
与您在
情节提要中使用的值匹配。InstanceEviewController(带有标识符:“化身控制器”)

2)因为您在加载情节提要时没有提供
捆绑包。你叫这个

let storyboard = UIStoryboard(name: "Avatar", bundle: nil);
但是,因为您将
bundle
指定为
nil
,所以它不知道在哪里查找
Avatar.storyboard
文件。要修复它,请将
bundle
指定为
bundle.main

let storyboard = UIStoryboard(name: "Avatar", bundle: Bundle.main);

要使其工作,必须检查
使用情节提要ID


我刚刚检查了它,它被设置为“化身控制器”,但我得到了相同的错误。我重新输入并再次运行它只是为了确定,它没有帮助任何东西修复它。您没有指定捆绑包,因此它不知道在哪里查找似乎已修复该错误的情节提要文件,但现在我收到***由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:'-[FInal_Project.User_Info NameInputEditingDidEnd:]:无法识别的选择器发送到实例0x7FABADB1B090'错误所在行的代码是什么?'我对swift比较陌生,所以我不知道如何计算出我已经检查并运行了它,但仍然得到相同的错误