我有一个segue(称为"ToSettingsSegue"
),它将自定义视图控制器(SettingsTableViewController
)推送到UINavigationController
的堆栈上。 SettingsTableViewController
已设置原型单元格("prototypeSliderCell"
)。毫无疑问,这是在故事板中设置的。
另一部分代码以编程方式将SettingsTableViewController
推送到UINavigationController
的堆栈。在SettingTableViewController
的{{1}}方法中,-tableView:cellForRowAtIndexPath:
在以编程方式完成时返回nil。
我认为这是由于原型单元格无法以编程方式提供而发生的。
我的解决方法?致电-dequeueResusableCellWithIdentifier:
并发送-perfromeSegueWithIdentifier:sender:
和自我。
这个问题有更好的解决方案吗?我不禁觉得这很脏。
答案 0 :(得分:1)
当您在代码中而不是通过故事板segue实例化SettingsTableViewController时,原型单元定义不可用,因为它仅在故事板中定义。
你描述的“解决方法”应该可以正常工作,我看不出任何肮脏的东西。在很多情况下,您需要以编程方式触发故事板segue发生,这就是performSegueWithIdentifier:sender:
旨在处理的内容。