Stretchy collectionView嵌入在tableviewHeader中

时间:2018-03-29 15:53:21

标签: ios swift uitableview uicollectionview

在我的应用中,我有一个如下屏幕:

enter image description here

我想为tableView实现一个有弹性的标头,它必须拉伸collectionView中嵌入的tableViewHeader中嵌入的imageViews。

我尝试在tableView中使用UIScrollViewDelegate,但它完全错误,因为我应该同时修改collectionView +单元格:

func scrollViewDidScroll(_ scrollView: UIScrollView) {

    let scrollY = scrollView.contentOffset.y

    if scrollY < 0 {
        var tmpFrame = tableViewHeader.frame
        tmpFrame.origin.y = scrollY
        tmpFrame.size.height = tableViewHeader.frame.height - scrollY
        tableViewHeader.frame = tmpFrame
    }
}

您知道如何实现此功能或者有一些提示可以帮助我吗?谢谢。

2 个答案:

答案 0 :(得分:0)

如果您不必使用UICollectionView,但可以使用UIPageViewUIScrollView来完成此操作。

答案 1 :(得分:0)

您可以使用UIPageViewController并将其作为子视图嵌入到'UITableView'中,因此它不仅具有伸缩性,而且还可以将其垂直的大头针手势和水平的手势保存在'UIPageViewController'上。

P.S:我一直在努力解决相同的问题,并实施了示例project