在我的应用程序中,我认为创建 UITableViewContoller 的子类(称为 GenericTableViewContoller)是一个好主意,它有一些在 Storyboard 中创建的原型单元格,可在整个应用程序中重用。
现在,我想做的是创建一个 GenericTableViewContoller 的子类(比如 SpecialTableViewController),它具有在 Storyboard 中创建的一些其他原型单元格,这些单元格仅在 SpecialTableViewController 中使用。
因此,我的主情节提要中有两个场景,一个用于 GenericTableViewContoller,一个用于 SpecialTableViewController,每个场景都有自己的原型单元集。
我遇到的问题是,当我为 GenericTableViewContoller 场景中声明的单元格标识符调用 dequeueReusableCellWithIdentifier 时,SpecialTableViewController 获取 nil 原型单元格。在 SpecialTableViewController 场景中声明的单元格出列就好了。
这是预期的行为吗(我有一个奇怪的怀疑)?我是否必须在 SpecialTableViewController 中调用 registerNib:forCellReuseIdentifier: 才能真正让它们从另一个场景中注册?有什么简单的方法来解决这个问题吗?