Git Product home page Git Product logo

horizontalparallaxscrollview's Introduction

HorizontalParallaxScrollView

Version License Platform

Demo Animation

You can see above demo project code. 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

[email protected]

License

HorizontalParallaxScrollView is available under the MIT license. See the LICENSE file for more info.

horizontalparallaxscrollview's People

Contributors

syjdev avatar

Stargazers

MohsinAli avatar

Watchers

MohsinAli avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.