/paper-onboarding

PaperOnboarding is a material design slider

Primary LanguageSwiftMIT LicenseMIT

header

paper-onboarding

Twitter CocoaPods CocoaPods CocoaPods Carthage compatible Travis codebeat badge Analytics

About

This project is maintained by Ramotion, Inc.
We specialize in the designing and coding of custom UI for Mobile Apps and Websites.

Looking for developers for your project? [▶︎CONTACT OUR TEAM◀︎]

StackViewController Example App

The iPhone mockup available here.

Requirements

  • iOS 10.0+
  • Xcode 8

Installation

Just add the Source folder to your project.

or use CocoaPods with Podfile:

pod 'paper-onboarding', '~> 1.1.3' swift 2.2

pod 'paper-onboarding', '~> 2.0.1' swift 3

or Carthage users can simply add to their Cartfile:

github "Ramotion/paper-onboarding"

Usage

Storyboard

  1. Create a new UIView inheriting from PaperOnboarding

  2. Set dataSource in attribute inspector

or Code

override func viewDidLoad() {
  super.viewDidLoad()

  let onboarding = PaperOnboarding(itemsCount: 3)
  onboarding.dataSource = self
  onboarding.translatesAutoresizingMaskIntoConstraints = false
  view.addSubview(onboarding)

  // add constraints
  for attribute: NSLayoutAttribute in [.Left, .Right, .Top, .Bottom] {
    let constraint = NSLayoutConstraint(item: onboarding,
                                        attribute: attribute,
                                        relatedBy: .Equal,
                                        toItem: view,
                                        attribute: attribute,
                                        multiplier: 1,
                                        constant: 0)
    view.addConstraint(constraint)
  }
}

For adding content use dataSource methods:

func onboardingItemAtIndex(index: Int) -> OnboardingItemInfo {
   return [
     ("BIG_IMAGE1", "Title", "Description text", "IconName1", "BackgroundColor", textColor, DescriptionColor, textFont, DescriptionFont),
     ("BIG_IMAGE1", "Title", "Description text", "IconName1", "BackgroundColor", textColor, DescriptionColor, textFont, DescriptionFont),
     ("BIG_IMAGE1", "Title", "Description text", "IconName1", "BackgroundColor", textColor, DescriptionColor, textFont, DescriptionFont)
   ][index]
 }

 func onboardingItemsCount() -> Int {
    return 3
  }

configuration contant item:

func onboardingConfigurationItem(item: OnboardingContentViewItem, index: Int) {

//    item.titleLabel?.backgroundColor = .redColor()
//    item.descriptionLabel?.backgroundColor = .redColor()
//    item.imageView = ...
  }

License

paper-onboarding is released under the MIT license. See LICENSE for details.

Follow Us

Twitter URL Twitter Follow