我的Pod框架中有一个CalendarCell.xib和一个CalendarCell.swift UIView子类.CalendarCell.swift具有连接到其视图的出口.在运行时我收到此错误:
无法在捆绑中加载NIB:'NSBundle(已加载)',名称为"CalendarCell"
在我的podspec文件中,我创建了一个bundle资源:
s.resource_bundles = { 'Resources' => ['MyFramework/**/*.{xib,xcassets}'] }
如果我安装我的Pod我可以看到xib文件,但它崩溃了,现在似乎xib文件和它的swift对应物在不同的包中.
任何帮助,将不胜感激!
你是对的,xib存储在一个不同的包中.您需要找到xibs包的路径并从该包中加载所有xib,而不是从主包中加载它们.
要在Swift 3中找到捆绑包的路径:
let bundle = Bundle(for: YourClass.self)
所以,你必须UINib
从该捆绑包加载:
let nib = UINib(nibName: "YourXibName", bundle: bundle)
并将其注册到您的UITableView
/ UICollectionView
,如果您为此需要它:
self.tableView.register(nib, forCellReuseIdentifier: "cellIdentifier")