创建一个自定义视图,显示UITableViewCell定义的子视图

时间:2015-07-29 06:17:24

标签: ios objective-c uitableview interface-builder

当我们在UITableViewCell中创建InterfaceBuilder时,会自动显示您无法删除的内容视图。有没有什么方法可以创建我自己的自定义UIView,就像有自己的内容视图?并且也会自动显示在界面构建器中。我不需要UITableViewCell的任何子类,但需要UIView

的子类

4 个答案:

答案 0 :(得分:1)

是的,您可以通过创建模型UIView类并在其中放置报告的标签来创建具有内容视图的UITableview视图。将此模型类导入您的UIViewController并手动创建一些委托方法以获取添加和删除的视图数量。但应该在运行时以编程方式创建视图

答案 1 :(得分:0)

我们需要使用UITableView子类来自定义UITableview单元格的外观。我们不能像你在目标c中所说的那样做。

如果您想通过简单地添加其他视图来自定义单元格,则应将它们添加到内容视图中,以便在单元格进入和退出编辑模式时将它们正确定位。

答案 2 :(得分:0)

您可以轻松地使用nib创建自定义tableview单元格。请检查下面提供的链接。 https://medium.com/@musawiralishah/creating-custom-uitableviewcell-using-nib-xib-files-in-xcode-9bee5824e722

答案 3 :(得分:0)

我一直在寻找这个,但到目前为止还没有能够解决这个问题。我不认为IB目前支持它。但是,基于@ A_curious_developer'回答找到适合我的解决方法。

TL; DR :诀窍是使用contentView的标签在代码中引用它,然后根据您的需要使用自动布局设置适当的约束。

以下是一个例子:

首先,我创建了自定义视图。它有一个" bubble / tooltip"在底部,顶部是一个空视图(选中)。

enter image description here

然后,我在视图控制器中使用了这个自定义视图,并为其添加了子视图以充当contentView(白色背景,已选中)。我还给了它一个标签(12345)。

enter image description here

最后,我在自定义视图for row in data.T.tolist(): print('%s,%s,%s'%tuple(row)) for row in zip(*data): print('%s,%s,%s'%row) 中查找此标记并设置相应的约束。

awakeFromNib

希望这有帮助!