Swift 无法加载捆绑包中的NIB-捆绑包尚未加载

Swift 无法加载捆绑包中的NIB-捆绑包尚未加载,swift,frameworks,bundle,xcode9.4,Swift,Frameworks,Bundle,Xcode9.4,我遇到了一个需要使用外部框架和捆绑包的问题 当框架被导入并且可以很好地调用它的函数时,它的一个方法尝试从附带的bundle中加载一个nib,由于这个原因,它以nsinternalinconsistenceexception结束 “无法加载捆绑包中的NIB” 我注意到,虽然捆绑包位于复制捆绑包资源中,可以通过调用bundle.allBundles找到,但错误消息显示捆绑包“尚未加载”。是否有什么我应该做的,以便可以提前装载包裹 更新:我之前没有提供相关代码,因为错误发生在框架调用的共同作用下,因此

我遇到了一个需要使用外部框架和捆绑包的问题

当框架被导入并且可以很好地调用它的函数时,它的一个方法尝试从附带的bundle中加载一个nib,由于这个原因,它以
nsinternalinconsistenceexception
结束

“无法加载捆绑包中的NIB”

我注意到,虽然捆绑包位于复制捆绑包资源中,可以通过调用
bundle.allBundles
找到,但错误消息显示捆绑包
“尚未加载”
。是否有什么我应该做的,以便可以提前装载包裹

更新:我之前没有提供相关代码,因为错误发生在框架调用的共同作用下,因此我不知道nib是如何“加载”的。 代码本身是这样的:

if let request = AUTRequest.init(transactionType: .debitGeneric) {
    AUTCTFClient.executeTransaction(with: request, from: self) { (_response) in
       if let response = _response {
           print(response)
       }
    }
}
self
是当前的viewcontroller,错误发生在调用
executeTransaction
之后,但在执行响应块之前


这与未加载的捆绑包有关,还是框架本身有故障?

如果您使用的是代码确实加载nib,则需要确保您从正确的捆绑包加载:

let bundle = Bundle(for: ClassName.self)
let view = bundle.loadNibNamed("nib_name", owner: nil, options: nil)![0]

如果您使用的是故事板,请确保选择正确的模块(框架)。您可以在Identity Inspector中选择模块(在interface builder中按cmd+alt+3)。

在尝试寻找解决方案一段时间后,最明显的答案是,所讨论的框架是用缺少的文件编译的,“AUTCTFClient.executeTransaction”试图在执行时调用。这一点已被框架的旧版本“确认”,该版本显示了某种执行进度视图。(但遗憾的是,它们在我们的案例中无法使用)


如果你不知何故遇到了这个问题,最好是询问所有者(或搜索)他们的框架的更新或稳定版本。

你能提供导致这个问题的代码吗?@KienTran更新了问题以便更好地理解我更新了问题以便更好地理解,因为我自己没有尝试加载nib。