测试已测试 | ✗ |
Lang语言 | SwiftSwift |
许可 | MIT |
发布最后发布 | 2017年5月 |
SwiftSwift版本 | 3.0 |
SPM支持SPM | ✗ |
由Tung Vo维护。
[](https://travis-ci.org/Tung Vo/DTParallaxScrollViewController)
DTParallaxScrollView是一个自定义UIView,用于创建垂直的视差滚动效果。您可以使用它将效果应用于您的UITableView、UICollectionView或UIScrollView。
例如,如果您想在表格视图上方有一个地图视图,并且想要能够与地图视图和表格视图进行交互而不会出现任何冲突。
您可以继承DTParallaxScrollViewController,然后在其初始化器中调用此方法
super.init(scrollView: tableView, headerHeight: kHeaderHeight)
其中scrollView是需要应用视差效果的视图,headerHeight是头部的高度。
为视差滚动视图控制器设置委托
self.delegate = object
在委托对象中符合DTParallaxScrollViewDelegate
func parallaxScrollViewViewForHeader(viewController: DTParallaxScrollView) -> UIView {
return mapView
}
以下是实现视差效果的方法
self.updateBlock = {(yOffset: CGFloat, visible: Bool) -> Void in
if yOffset < 0 {
let scaleFactor = 1 + abs(yOffset/self.headerHeight)
self._mapView.transform = CGAffineTransformMakeScale(scaleFactor, scaleFactor)
}
else {
self._mapView.transform = CGAffineTransformIdentity
}
}
除了使用DTParallaxScrollViewController之外,您还可以使用DTParallaxScrollView实现相同的效果。
要运行示例项目,先克隆仓库,然后从示例目录首先运行pod install
。
DTParallaxScrollViewController可通过CocoaPods获取。要安装它,只需将以下行添加到您的Podfile中:
pod "DTParallaxScrollViewController"
Tung Vo, [email protected]
DTParallaxScrollViewController受MIT许可协议的约束。有关更多信息,请参阅LICENSE文件。