答案 0 :(得分:2)
问题有点复杂。有不同的方法可以解决这个问题,但没有一个方法容易。
您可以在scrollview(嵌套技术)中添加表视图,但如果您尝试滚动它将感觉不自然。要改善用户体验,您需要实现scrollview委托方法并应用一些内部逻辑。所有这些技术都在两个wwdc 2013-14视频here和here中进行了解释,但我强烈建议您同时观看2011-12的早期会议,以释放滚动视图的强大功能。
最好的方法是使用自定义布局实现UICollectionView
,这也在wwdc 2014的Advanced collection view user interfaces中进行了解释,在这些会话中,Apple解释了他们如何开发包含浮动标题的AppStore应用程序。
另一个解决方案是在github上搜索,你可以找到CSSStickyHeaderFlowLayout或类似的解决方案。
如果您只需要使用自动布局向滚动视图添加标题(不嵌套另一个滚动视图),则可以应用最后一个。
答案 1 :(得分:1)
您附加的布局图像,其类型的paralax控件。
我之前有过某种布局,可以轻松配置。
https://github.com/Vinodh-G/ParallaxTableViewHeader
let headerView : ParallaxHeaderView = ParallaxHeaderView.parallaxHeaderViewWithImage(UIImage(named: ""), forSize: CGSizeMake(self.tableview.frame.size.height, headerHeight)) as! ParallaxHeaderView
self.tableview.tableHeaderView = headerView
func scrollViewDidScroll(scrollView: UIScrollView) {
let header: ParallaxHeaderView = self.tabkeview.tableHeaderView as! ParallaxHeaderView
header.layoutHeaderViewForScrollViewOffset(scrollView.contentOffset)
self.tableview.tableHeaderView = header
}
答案 2 :(得分:0)
我不知道任何swift自定义库,但从概念上讲,我认为你可以使用浮动标题视图。我知道2个项目在obectiveC中你可以在你的快速项目中架起桥梁:
这两个项目,在您的表中添加此自定义标题视图后,自定义滚动委托方法,您可以为您的个人目的覆盖这些方法。