我希望有两个像这样滚动的集合视图:the goal
我已经实现了这一点,但我遇到的问题是,当我向下滚动绿色集合视图时,单独滚动而不是整个视图:collection view with scroll
然后我将滚动锁定在绿色集合视图中,并在整个屏幕周围放置滚动视图。但是当您滚动集合视图时,会像这样剪切:collectionview locked
我见过像media这样的其他应用程序有两个集合视图,它们向两个方向滚动,但我无法弄清楚必须实现这个目标。 Medium home
要使滚动视图能够滚动,我这样做是为了计算两个集合视图的高度,然后将高度设置为滚动视图:
var size : CGSize
let height = firstView.frame.height +
secondview.collectionViewLayout.collectionViewContentSize.height
size = CGSize(self.view.frame.width,height)
scrollview.contentSize = size
而我的猜测是我可能想对绿色集合视图做同样的事情,但我没有那个工作。
谢谢!
答案 0 :(得分:0)
使用UITableView(用于垂直滚动)。将集合视图(带水平滚动)放在表视图的标题中。通过这样做,您将具有可水平滚动的视图,并且将修复视图切割的问题。此外,您不必为垂直滚动采取另一种视图。您将使用表格视图的单元格实现此目的。
像Medium(或许多其他应用程序)这样的设计很容易通过这种方式实现。一个表视图(垂直滚动),一个集合视图(水平滚动)作为表视图的标题,其余的一切都将由表视图管理。试一试。