据我所知,还有其他与此问题非常类似的问题,但似乎没有任何帮助我。
我通过cocoapods包含一个库,其中包含一个带有.xib文件的资源包。当我从该库调用一个方法时,会调用它:
dispatch_once(&pred,
^{
NSBundle *posBundle = [NSBundle bundleWithPath:[[NSBundle mainBundle] pathForResource:@"ClipPOSLibrary" ofType:@"bundle"]];
sharedInstance = (POSReaderAlert*)[posBundle loadNibNamed:@"POSReaderAlert" owner:self options:nil][0];
sharedInstance.yCenterOffsetPercentage = 0;
sharedInstance.batteryThresholds = @[@(1), @(5), @(10), @(20)];
sharedInstance.currentThreshold = 3;
[[NSNotificationCenter defaultCenter] addObserver:sharedInstance
selector:@selector(handleRotation:)
name:UIApplicationDidChangeStatusBarOrientationNotification
object:nil];
});
我在'sharedInstance =(POSReder .....'行)上遇到抛出异常。这是例外:
Could not load NIB in bundle: 'NSBundle </var/mobile/Containers/Bundle/Application/F41CE11A-1E7A-4902-83F2-285CC2508D41/EMV-Flow-Example.app/ClipPOSLibrary.bundle> (not yet loaded)' with name 'POSReaderAlert'
我确保在构建库时,nib选择了正确的目标,并且它包含在所需的任何位置。奇怪的是,我并不总是得到这个错误。我用相同的库建立了项目,一切似乎都运行良好,但在其他项目中却没有。所以我的猜测是,我在项目配置/设置中做错了但我真的无法弄清楚是什么。
非常感谢您的帮助!
*更新* 所以我通过修复目标设置来使用一个好的xcconfig文件来解决iOS 6和7的问题,这需要完成,因为工作区有点不稳定,里面有三个不同的项目。但问题仍然发生在iOS 8上。任何想法?