当我尝试通过 UINib 的 instantiateWithOwner 方法从 xib 文件加载自定义 UITableViewCell 时,出现以下错误。我已经尝试了在这里可以找到的所有其他解决方案,但都没有运气。问题似乎是当 UINib 打开 xib 文件时,它使用超类 UITableViewCell 而不是我的自定义类 ContentPackCell。我附上了一个来自 Interface Builder 的屏幕截图,显示了我将 xib 与我的类关联的位置以及关联标识符的位置。必须有一些其他的步骤,我错过了。
错误:
*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UITableViewCell 0x6b87220> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key descriptionLabel.'
代码(类似于 Apple 的示例 AdvancedTableViewCells 项目):
ContentPackCell *cell = (ContentPackCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
[self.cellNib instantiateWithOwner:self options:nil];
cell = tmpCell;
self.tmpCell = nil;
}
更新: