ios - 没有 Storyboard 中场景的某些类别的目标

标签 ios xcode crash uistoryboard

我的项目中有许多目标,每个目标都使用相同的 Storyboard ,但仅选择其中链接的类。通常 Xcode 不会提示,至少在 iPhone 版本上不会,在大多数目标上也不会。然而,一个特定的人提示两个特定的类别:

Unknown class ****** in Interface Builder file.

Unknown class $$$$$$ in Interface Builder file.

尽管 Storyboard中还有许多其他场景,但即使在这种特定情况下,其类也未包含在目标中。

当我在 iPad(模拟器)上执行应用程序时,就会发生这种情况,一段时间后它会在 UIApplicationMain 上崩溃;但我不知道这两件事是否有联系。

是否有某种方式让 Xcode 决定检查 Storyboard 的某些场景,而检查其他场景是否存在相应的类?

最佳答案

问题在于 Swift 是基于模块的。每个目标都是一个模块。类在特定模块中定义,并以该模块命名。

因此,MyFirstTarget 中的 ViewController 与 MySecondTarget 中的 ViewController 不同 - 它们是 MyFirstTarget.ViewControllerMySecondTarget.ViewController

如果您查看 Storyboard的身份检查器,您会发现实际上它告诉您它认为该类属于哪个模块。因此,如果在 Nib 加载时该模块不存在,它可能会变得致命的困惑。

关于ios - 没有 Storyboard 中场景的某些类别的目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31465224/

相关文章:

c# 应用程序无法在另一台计算机上启动

java - Robovm - SQLite 和蓝牙 4 (BLE)

ios - Swift 以编程方式打开一个新的 View Controller

xcode - Xcode 中的 GNU make

iphone - 此类与键 View 的键值编码不兼容

iphone - OpenCV iOS 阻止 Crash

iphone - Xcode 4.2 模拟器崩溃日志

ios - Objective-C 中的调用方法层次结构

ios - 取消粗体通知权限 UI 警报操作文本

ios - 确定 UIGraphicsBeginImageContext 使用 CGBitmapContextCreate 创建图形上下文吗?