【问题标题】:UITableView with 8 inherited cell type具有 8 种继承单元格类型的 UITableView
【发布时间】:2013-11-13 11:23:20
【问题描述】:

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

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

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

我也想到了 registerClass:forCellReuseIdentifier:,但这种方法不会使用 nib 创建单元格,因此我需要以编程方式完成所有操作。

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

【问题讨论】:

  • 你找到什么优雅的解决方案了吗?

标签: ios objective-c design-patterns uitableview


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-15
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多