【发布时间】:2020-03-16 05:53:27
【问题描述】:
如何在UICollectionView 中动态设置UITableView 的标头大小。我之前使用此代码在 UIViewController 中使 UITableView 标头动态化
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
sizeHeaderToFit()
}
func sizeHeaderToFit() {
let headerView = questionTableView.tableHeaderView!
headerView.setNeedsLayout()
headerView.layoutIfNeeded()
let height = headerView.systemLayoutSizeFitting(UIView.layoutFittingCompressedSize).height
var frame = headerView.frame
frame.size.height = height
headerView.frame = frame
questionTableView.tableHeaderView = headerView
}
但不能在UICollectionViewCell 类中使用此代码。它说“UICollectionViewCell”没有成员viewDidLayoutSubviews。
那么我怎样才能在collectionView中制作tableView的动态标题高度。我在故事板的UITableView 中将UIView 拖到顶部(用于标题视图)
【问题讨论】:
-
您不能在
UICollectionViewCell中使用viewDidLayoutSubviews,因为它是UIViewController的一部分。 -
我怎样才能为嵌入在 UICollectionView @PALAKMobileTeamLeader 中的 UItableView 做类似的功能
-
您是否尝试在 func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView 的帮助下制作标题视图?{}
-
是的,它会在 uitableview 中创建其他视图?例如:Storyboard 中的标题视图,此委托的标题视图高度,然后显示单元格
-
如果你分享更多的表格视图代码会更好,这样我可以更好地帮助你。
标签: ios swift uitableview uicollectionview