Interface Builder 文件中未知 class - Xcode 8 Swift 3
Unknown class in Interface Builder file - Xcode 8 Swift 3
我运行进入如下错误
Unknown class TutorialViewController.swift in Interface Builder file.
将默认文件 Main.storyboard
和 ViewController.swift
分别重命名为我想要的 TutorialView.storyboard
和 TutorialViewController.swift
命名约定时。
我通过物理重命名 Xcode 中的文件名并更新 TutorialViewController.swift
的 class 名称来重命名文件。
重命名后,我尝试通过将故事板的 Custom Class
更新为 TutorialViewController
来将 link 从 TutorialView.storyboard
修复为 TutorialViewController.swift
,这是正确的link 的完成方式。这实际上导致了上述错误。
免责声明:我知道这与 this SO post 类似,但我想提出这个问题并回答我的解决方案,因为 post 没有公认的答案.我希望我能在我花时间解决这个问题的所有时间里救一个人。
最终解决我问题的方法是创建一个新项目并查看原始 Main.storyboard
如何引用其在 XML 中的 .swift 文件,它看起来像这样
<viewController id="BYZ-38-t0r" customClass="ViewController" customModule="Sandbox" customModuleProvider="target" sceneMemberID="viewController">
重要的方面是customClass="ViewController"
通过使用它,手动编辑我项目的 TutorialView.storyboard
并添加 customClass="TutorialViewController
我解决了错误。
您也可以尝试再次选择自定义 Class -- Class 到您的 class 名称并点击 return。这将有助于更新与 viewController.
关联的 class 名称
检查是否在自定义视图的界面生成器中选择了 Inherit from Target
。这实际上对我有用。
如果您的视图恰好在一个被复制到不同目标的 .bundle
文件中,那么您需要明确设置模块目标。
如果您有多个目标,请检查是否为所有目标选择了自定义 class,或者至少为您选择的 运行。
我运行进入如下错误
Unknown class TutorialViewController.swift in Interface Builder file.
将默认文件 Main.storyboard
和 ViewController.swift
分别重命名为我想要的 TutorialView.storyboard
和 TutorialViewController.swift
命名约定时。
我通过物理重命名 Xcode 中的文件名并更新 TutorialViewController.swift
的 class 名称来重命名文件。
重命名后,我尝试通过将故事板的 Custom Class
更新为 TutorialViewController
来将 link 从 TutorialView.storyboard
修复为 TutorialViewController.swift
,这是正确的link 的完成方式。这实际上导致了上述错误。
免责声明:我知道这与 this SO post 类似,但我想提出这个问题并回答我的解决方案,因为 post 没有公认的答案.我希望我能在我花时间解决这个问题的所有时间里救一个人。
最终解决我问题的方法是创建一个新项目并查看原始 Main.storyboard
如何引用其在 XML 中的 .swift 文件,它看起来像这样
<viewController id="BYZ-38-t0r" customClass="ViewController" customModule="Sandbox" customModuleProvider="target" sceneMemberID="viewController">
重要的方面是customClass="ViewController"
通过使用它,手动编辑我项目的 TutorialView.storyboard
并添加 customClass="TutorialViewController
我解决了错误。
您也可以尝试再次选择自定义 Class -- Class 到您的 class 名称并点击 return。这将有助于更新与 viewController.
关联的 class 名称检查是否在自定义视图的界面生成器中选择了 Inherit from Target
。这实际上对我有用。
如果您的视图恰好在一个被复制到不同目标的 .bundle
文件中,那么您需要明确设置模块目标。
如果您有多个目标,请检查是否为所有目标选择了自定义 class,或者至少为您选择的 运行。