自定义单元格导致“NSInternalInconsistencyException”,原因:“无法在包中加载 NIB:
Posted
技术标签:
【中文标题】自定义单元格导致“NSInternalInconsistencyException”,原因:“无法在包中加载 NIB:【英文标题】:Custom cell is causing a 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 【发布时间】:2019-08-21 23:46:21 【问题描述】:我正在尝试使用 XIB 文件将自定义单元格添加到我的表中,但在尝试运行它时出现此错误:
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle (loaded)' with name 'parentCell''
这些是我到达这里所采取的步骤:
1) 创建了一个自定义 xib 故事板单元 2) 将情节提要单元格的标识符设置为 parentCell 3) 为自定义 xib 创建了一个类作为 ParentTableViewCell 4)将xib故事板单元的类设置为ParentTableViewCell 5) 在主情节提要上创建了一个表格视图,并为主 ViewController 中的表格创建了一个名为 itemsTable 的 IBOutlet。 6)在主ViewController的viewdidload中设置:
itemsTable.dataSource = self
itemsTable.delegate = self
itemsTable.register(UINib(nibName: "parentCell", bundle: nil), forCellReuseIdentifier: "parentCell")
7) 在 cellForRowAt 中:
let cell = tableView.dequeueReusableCell(withIdentifier: "parentCell", for: indexPath) as! ParentTableViewCell
return cell
你们能看看我是否错过了导致问题的步骤吗?
我已经尝试过 command + shift + k 并显示相同的错误。
【问题讨论】:
xib 名称是什么? 嘿@Sh_Khan xib 名称是 ParentTableViewCell.xib 【参考方案1】:如果 xib 名称是 ParentTableViewCell.xib
那么你应该这样做
itemsTable.register(UINib(nibName: "ParentTableViewCell", bundle: nil), forCellReuseIdentifier: "parentCell")
【讨论】:
非常感谢您的帮助!终于搞定了。以上是关于自定义单元格导致“NSInternalInconsistencyException”,原因:“无法在包中加载 NIB:的主要内容,如果未能解决你的问题,请参考以下文章
自定义单元格导致“NSInternalInconsistencyException”,原因:“无法在包中加载 NIB: