当我为视图控制器删除xib文件时,我收到此错误:“无法在包中加载NIB ...名称为'LibraryViewController'”。我引用了这个question。
我已经完成的事情:
/var/folders
的内容。但是,我无法删除/var/folders
中的文件夹8k,gf和zz,因为它们是Mac OS所必需的。有没有什么办法可以删除我未使用的xib文件而不会崩溃我的应用程序?
更新
override func viewDidLoad() {
libraryTable.register(UINib(nibName: "categoriesTableViewCell", bundle: nil), forCellReuseIdentifier: "categoriesTableViewCell")
}
public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
if indexPath.section == 0 {
let cell = tableView.dequeueReusableCell(withIdentifier: "categoriesTableViewCell", for: indexPath) as! categoriesTableViewCell
return cell
} else {
let cell = songTableViewCell()
return cell
}
}
答案 0 :(得分:1)
替换注册单元格的代码(现在需要在代码而不是.xib / storyboard中创建),如下所示:
libraryTable.register(UITableViewCell.self, forCellReuseIdentifier: "categoriesTableViewCell")
您在上面显示的行会注册nib,因此在创建单元格时,您已将其告知它在某个nib文件中。替换行以编程方式创建默认单元格,这意味着您需要使用swift代码而不是InterfaceBuilder提供的GUI方法对其进行任何修改。这非常简单。