iOS - 如何在自定义单元格中使用继承?

Posted

技术标签:

【中文标题】iOS - 如何在自定义单元格中使用继承?【英文标题】:iOS - How to use inheritance in custom cell? 【发布时间】:2015-08-19 09:40:07 【问题描述】:

我在 tablview 中有 6 个自定义单元格。所有自定义单元格都有 2 种类型的数据。首先是标签。 2nd 各不相同。所以,我想在这里使用继承。像这样 : 基本自定义单元类包含:标签 1 和标签 2。 子自定义单元格类包含:标签1、标签2和其他自定义单元格不同的组件。

所以,简而言之,我想在自定义单元格或没有自定义单元格中制作标签,并在所有 (6) 个自定义单元格中继承。但我不知道该怎么做。任何建议都会很棒。提前致谢。

【问题讨论】:

参考:appcoda.com/customize-table-view-cells-for-uitableview。或:code.tutsplus.com/tutorials/… 谢谢@Anthu。但我想制作自定义单元格继承。你给了我简单的自定义单元格示例,没有继承。 【参考方案1】:

根据您创建单元格的方式(是否在界面生成器中),这应该很容易。我建议在代码中创建您的单元格,然后继承该单元格(通常您现在将使用 UITableViewCell 创建您的基本单元格类并从您的新自定义单元格继承新单元格,即 MyCustomBaseTableViewCell)。

【讨论】:

谢谢@Tafh。我在界面生成器中创建了自定义单元格。我想你想说,我应该以编程方式制作所有自定义单元格然后使用继承,对吗?? 是的,没错。您不能在界面构建器中继承自定义单元构建并再次在界面构建器中继承。但是你可以在代码中做到这一点......也就是说,你可以继承你的(IB)基本单元,而不是在代码中添加例如标签。 (但我不建议您这样做,尤其是当您想使用自动布局时。在这种情况下编写代码更容易。) 谢谢@Tafh。我在界面生成器中创建了自定义单元格。我已经在界面生成器中创建了所有自定义单元格。我花了很多时间在界面生成器中制作自定义单元格。现在我不想浪费时间重新创建它。因此,请让我知道这种情况下的任何其他解决方案(在界面生成器中创建自定义单元格时)。提前致谢。 您必须将您的 IB 单元链接到自定义的 uitableviewcell(代码)文件,但您可能已经这样做了。然后创建 IBOutlets,如果您使用自动布局还添加约束,您可能需要使这些新单元格成为可能(您可能需要标签图像的尺寸和位置等)。然后只需创建一个新文件,它是您的基类的子类。现在通过代码在此文件中添加您的标签、图像(以及在自动布局添加/更新约束的情况下)。

以上是关于iOS - 如何在自定义单元格中使用继承?的主要内容,如果未能解决你的问题,请参考以下文章

在自定义单元格中调整 iOS 7.1 中的 UILabel 大小

iOS Swift:在自定义 UITableView 单元格中更新二维数组时获取重复值

如何在自定义单元格中同步选择文本视图的事件?

如何通过 AutoLayouts 在自定义单元格中正确显示 2 个 UITextFields?

如何在自定义表格视图单元格中保存文本字段

如何停止在自定义表格视图单元格中交换数据?