我正在尝试建立这种关系,下图描述了“父母->孩子->孩子->等”。 。我尝试将垂直集合视图用于“父”集合视图,然后将水平集合视图用于子代。但是,当单击“查看子级按钮”时,我正努力将集合视图单元格向下移动。我以为单击该按钮后可以执行以下操作:
@IBAction func showChildrenBtnClicked(_ sender: Any) {
collectionView.contentInset.bottom = 200
collectionView.reloadData()
}
但这似乎无济于事。有谁知道如何在集合视图中添加空白区域,以便随后可以创建水平集合视图来容纳子元素。
这些是我要实现的行为的一些模拟图像:
先谢谢您。
答案 0 :(得分:1)
首先将所有视图作为集合视图。 点击ViewchildrenButton时,将其委托给父集合视图控制器类,然后在其中
if let flowLayout = metaMoreCollectionView.collectionViewLayout as? UICollectionViewFlowLayout {
flowLayout.invalidateLayout()
}
这将称为
collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize
并在那里提供更新的大小。