Xcode 9 swift 4多个viewController的动态可重用标头

问题描述 投票:0回答:2

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

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

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

ios swift4 xcode9 reusability uicontainerview
2个回答
0
投票

假设您希望tableView中的所有项目始终显示(不在tableView中滚动)

您应该为tableViewcontainerView添加高度约束

用数据集tableViewHeightConstraintcontainerViewHeightConstraint加载/重新加载tableView,内容大小高度为tableView

tableViewHeightConstraint.constant = tableView.contentSize.height

要么

containerViewHeightConstraint.constant = tableView.contentSize.height

0
投票

我已经解决了这个问题,创建了一个包含表视图的主视图控制器。公共头是一种tableviewcell。然后为每个不同的body部分成为另一个tableviewcell,所以根据viewCOntroller的type属性,我加载相关的tableviewCell。我在@ midhun-mp评论后做了这个。谢谢他。

© www.soinside.com 2019 - 2024. All rights reserved.