Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/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
Ios 故事板不';不包含具有标识符的视图控制器_Ios_Objective C_Xcode_Storyboard - Fatal编程技术网

Ios 故事板不';不包含具有标识符的视图控制器

Ios 故事板不';不包含具有标识符的视图控制器,ios,objective-c,xcode,storyboard,Ios,Objective C,Xcode,Storyboard,我不断得到以下错误: Storyboard (<UIStoryboard: 0x7ebdd20>) doesn't contain a view controller with identifier 'drivingDetails' 我已经在UIStoryboard上设置了标识符,但仍然会出现此错误 在输入标识符时,如果未选择正确的视图控制器,只需检查一次,然后再次重复该过程。修复!在我的示例DrivingDetails中,不仅必须设置segue中的标识符,而且必须将tableV

我不断得到以下错误:

Storyboard (<UIStoryboard: 0x7ebdd20>) doesn't contain a view controller with identifier 'drivingDetails'
我已经在
UIStoryboard
上设置了
标识符
,但仍然会出现此错误



在输入标识符时,如果未选择正确的视图控制器,只需检查一次,然后再次重复该过程。

修复!在我的示例DrivingDetails中,不仅必须设置segue中的标识符,而且必须将tableViewController中的标识符设置为DrivingDetails…检查我的图片:

我还删除了导航视图控制器,因此现在两个表视图控制器通过“推”动画直接连接

*****为XCODE 7.0编辑*****

您必须设置情节提要ID(在这种情况下,viewController嵌入在导航控制器中:

let lastMinVc  = mainStoryBoard.instantiateViewControllerWithIdentifier("lastMinuteNavController") as! UINavigationController

仅供将来参考:

我正在使用故事板在iOS 6上开发

我遇到了相同的问题,但在inspector中找不到“Identifier”字段。 相反,只需将名为“Storyboard ID”的字段设置为标识符的名称。该字段可以在inspector中的“Show the Identity inspector”选项卡下找到

[注意-下面的评论表明,一些人发现他们需要(也?)在inspector中将字段“Restoration ID”设置在故事板ID的正下方。单击“Use Storyboard ID”似乎不够。]

下面有一幅图片供参考:(在本例中,我将标识符命名为与类相同的名称)

在向情节提要添加新的VC后,出现了此问题,但仅在设备上,而不是在模拟器上。结果表明,这是由于有多个情节提要本地化-VC仅添加到主版本。我尝试删除其他本地化(其中一个是我的iPhone使用的)但是仍然有错误。最后我不得不用新的VC在每个本地化中重新创建其他本地化。

我得到了相同的错误,我可以通过在我的项目中更改以下更改来修复此错误。我在inspector面板中提到了我的类名,然后问题就解决了。 转到->右侧面板上有身份检查器 在自定义类部分中

类:您的类名(ViewController)

在身份部分 情节提要ID:您的情节提要ID(viewController名称)

点击这里的“使用故事板ID”选项后,问题就解决了。我希望它能帮助你……

我找到了它。。。 单击情节提要中的视图控制器, 单击vc属性检查器左侧的第三个图标-设置调用名称的图标 屏幕上写着“身份”——我的身份被隐藏了,我不得不点击“身份”这个词 然后显示情节提要ID-从代码中添加标识符,完成

使用您的标识符(@“drivingDetails”)作为情节提要ID。

在identity inspector(左侧第三个图标)中修改“情节提要ID”应该可以


如果没有,并且您确定没有输入错误,请尝试清理项目(“产品”->“清理”,或简单地使用command+shift+K)。

标识位于Xcode 6.3.2名为脚本ID的标识检查器选项卡中,并选中使用脚本ID选项。
Xcode 7-13中

当您更改情节提要ID时,会出现如下错误


只需清理您的项目(CMD+SHIFT+K)

编译器显示以下错误:

Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: 'Storyboard (<UIStoryboard: 0x7fedf2d5c9a0>) doesn't contain a 
ViewController with identifier 'SBAddEmployeeVC''

此处,
storyboardWithName
是我们正在使用的故事板文件的名称,
bundle
指定故事板所在的捆绑包(即
mainBundle
)。

一些我的视图控制器缺少故事板标识符属性

之前:

<viewController
    id="pka-il-u5E"
    customClass="YourViewControllerName"
    customModule="ModuleName"
    customModuleProvider="target"
    sceneMemberID="viewController">

之后:

<viewController
    storyboardIdentifier="YourViewControllerName"   <----
    id="pka-il-u5E"
    customClass="YourViewControllerName"
    customModule="ModuleName"
    customModuleProvider="target"
    sceneMemberID="viewController">

我尝试了上述所有解决方案,但没有一个奏效

我所做的是:

  • 项目清洁
  • 删除派生数据
  • 重新启动Xcode
  • 重新输入先前答案中显示的故事板ID(IB内部)
令人震惊的是,我在interface builder中输入了Storyboar ID,在再次打开Xcode后,它被删除了


希望这对某人有所帮助。

在主故事板中选择相应的视图控制器并检查故事板ID非常简单,如果它存在,请在给出名称和使用它的标识符中使用它

这里我的第一个是故事板ID
让vc=self.storyboard?.instanceeviewcontroller(标识符为“firstone”)作为!tabBarViewController

对于那些与@Ravi Bhanushali有相同问题的人,这里有一个Swift 4解决方案:

let storyboard=UIStoryboard(名称:“Main”,bundle:bundle.Main)

注意:

  • “故事板文件名”
    是故事板的文件名,而不是故事板的ID
  • “情节提要ID”
    是您在该情节提要的标识检查器中手动设置的ID(请参见下面的屏幕截图)


有时人们认为第一个是情节提要ID,第二个是视图控制器类名,所以请注意区别。

XCODE拖放窗格消失了!!!


清理所有东西并关闭Xcode并不能解决我的问题


我必须删除viewController并创建一个具有新标识符的新控制器。

注意:如果您在项目中使用cocoapods,请首先运行
pod反集成
rm Podfile.lock

然后在任何第三方代码编辑器(如)中打开项目文件夹,并对引发错误的ViewController名称进行全局搜索

  • 重命名/修复发现的任何错误名称
  • 保存所有更改
  • 清理并构建您的项目
  • 现在一切都会好起来的


    这通常是在您从Xcode中重命名文件时引起的。

    我也面临同样的问题。我已经给出了标识符,但编译器没有
    <viewController
        id="pka-il-u5E"
        customClass="YourViewControllerName"
        customModule="ModuleName"
        customModuleProvider="target"
        sceneMemberID="viewController">
    
    <viewController
        storyboardIdentifier="YourViewControllerName"   <----
        id="pka-il-u5E"
        customClass="YourViewControllerName"
        customModule="ModuleName"
        customModuleProvider="target"
        sceneMemberID="viewController">
    
    let storyboard = UIStoryboard(name: "StoryboardFileName", bundle: nil)
    let controller = storyboard.instantiateViewController(withIdentifier: "StoryboardID")
    self.present(controller, animated: true, completion: nil)