3

我有一个UITableView,有 8 种不同类型的单元格。这些自定义单元格有一些共同的设计(如左上角图标、标题、副标题......)。然而,在这些共同特征下,每个细胞都是不同的。为了减少维护,我的 8 个单元继承自具有公共 IBOutlet 的默认抽象单元。

现在我的问题是:最好、最合适的方法是什么?

起初,我想到了使用registerNib:forCellReuseIdentifier:但这意味着 8 个不同的 xib。在这种情况下,如果其中一个常见的设计特性发生变化,我需要尝试所有 8 个 xib 来更改相同的东西。我认为这不是很高效和干净。

我还想到了registerClass:forCellReuseIdentifier:但是这种方法不会用笔尖创建单元格,所以我需要以编程方式完成所有操作。

解决方案可能是在 tableview 中有一个通用的 xib,不同的注册类,这些将负责使用他们自己的自定义设计。但我看不出如何用前两种方法实现这一点。

4

1 回答 1

0

我会使用一个包含 8 个不同 UITableViewCell 子类的 nib 文件。您应该能够在使用registerClass:forCellReuseIdentifier:nib 文件的类(UITableViewCell 的子类)内部使用。如果不清楚,我会尝试提供一些代码。

于 2013-11-13T11:47:48.583 回答