Xcode 9 swift 4动态可重用头文件,用于多个viewController

时间:2018-08-30 05:57:35

标签: ios swift4 xcode9 reusability uicontainerview

我需要5个viewController,它们都具有相同的标头组件。所以我不想为每个viewController复制相同的视图和代码。我想创建一个标题,并为每个viewController使用标题。 问题是标题将由对象填充,并且此对象具有列表属性。所以我需要添加此列表属性,例如tableView。  What one view controller look like

我试图创建一个headerViewController并将我的对象传递给它。我将在每个5个主视图Controllers的容器视图中使用此viewController。但是高度会有所不同,因此我无法为容器视图定义高度限制。 in 5视图控制器应使用滚动视图,因为总高度将高于屏幕。

这有点复杂,因为我试图像Android开发人员一样解决这个问题:)

2 个答案:

答案 0 :(得分:0)

假设您希望一直显示tableView中的所有项目(不滚动tableView

您应将高度限制添加到tableViewcontainerView

在加载/重载具有数据集tableViewHeightConstraintcontainerViewHeightConstraint且内容大小高度为tableView的{​​{1}}的tableView之后

tableViewHeightConstraint.constant = tableView.contentSize.height

OR

containerViewHeightConstraint.constant = tableView.contentSize.height

答案 1 :(得分:0)

我已经解决了创建包含表视图的主视图控制器的问题。通用标头是tableviewcell的一种。然后对于每个不同的身体部位成为另一个tableviewcell,因此根据viewCOntroller的type属性,我正在加载相关的tableviewCell。 我在@ midhun-mp评论后这样做。多亏他。