HorizontalParallaxScrollView
You can see above demo project code.
Usage
- First, You have to define
HorizontalParallaxScrollView
object.
let view = UIView(...)
let item = HorizontalParallaxScrollViewItem(view: view,
originOffset: CGPoint(x: 150, y: 80),
acceleration: HorizontalParallaxAcceleration.invariable(CGPoint(x: 1, y: 1)),
progress: { (parallaxView, view) in
//...
}
)
If you want, You can define a dynamic acceleration.
let dynamicAcceleration = HorizontalParallaxAcceleration.variable { (parallaxView, view) -> CGPoint in
let progressRatio = (parallaxView.contentSize.width - 3 * parallaxView.contentOffset.x) / parallaxView.contentSize.width
return CGPoint(x: 0.65 * progressRatio, y: 0.65 * (1 - progressRatio))
}
let view = UIView(...)
let item = HorizontalParallaxScrollViewItem(view: view,
originOffset: CGPoint(x: 150, y: 80),
acceleration: dynamicAcceleration,
progress: { (parallaxView, view) in
//...
}
)
- Second, Build a parallaxView.
let parallaxView = HorizontalParallaxScrollViewBuilder.setOption { (option) in
option.frame = CGRect(x: 0, y: 100, width: view.frame.size.width, height: view.frame.size.height - 100)
option.parallaxViewItems = [item] // You can add more items.
option.isPagingEnabled = false
}.build()
parallaxView.delegate = self //Optional
Requirements
Minimum iOS Target : iOS 8.0
Installation
HorizontalParallaxScrollView is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'HorizontalParallaxScrollView'
Author
License
HorizontalParallaxScrollView is available under the MIT license. See the LICENSE file for more info.