【发布时间】:2012-03-03 23:54:10
【问题描述】:
我正在尝试在我正在开发的应用中使用故事板。在应用程序中有 Lists 和 Users 并且每个都包含其他的集合(列表的成员,用户拥有的列表)。因此,因此,我有 ListCell 和 UserCell 课程。目标是让它们在整个应用程序中可重用(即,在我的任何 tableview 控制器中)。
这就是我遇到问题的地方。
如何在情节提要中创建可在任何视图控制器中重复使用的自定义 tableview 单元格?
这是我迄今为止尝试过的具体事情。
在 Controller #1 中,添加了一个原型单元,将类设置为我的
UITableViewCell子类,设置重用 id,添加标签并将它们连接到类的出口。在 Controller #2 中,添加了一个空的原型单元,将其设置为相同的类并像以前一样重用 id。当它运行时,当单元格显示在控制器 #2 中时,标签永远不会出现。在控制器 #1 中运行良好。在不同的 NIB 中设计了每种细胞类型,并连接到适当的细胞类。在情节提要中,添加了一个空原型单元格并设置其类并重用 id 来引用我的单元格类。在控制器的
viewDidLoad方法中,将这些NIB 文件注册为重用ID。显示时,两个控制器中的单元格都是空的,就像原型一样。将两个控制器中的原型保持为空并设置类并将 id 重用于我的单元类。完全用代码构建单元格的 UI。单元格在所有控制器中都能完美运行。
在第二种情况下,我怀疑原型总是覆盖 NIB,如果我杀死了原型单元,则为我的 NIB 注册重用 id 会起作用。但是我无法设置从单元到其他帧的转场,这确实是使用情节提要的全部意义所在。
归根结底,我想要两件事:在情节提要中连接基于 tableview 的流程,并以可视方式而不是在代码中定义单元格布局。到目前为止,我不知道如何获得这两个。
【问题讨论】:
标签: objective-c ios uitableview storyboard