CocoaPods trunk is moving to be read-only. Read more on the blog, there are 18 months to go.

Conductor 1.0

Conductor 1.0

TestsTested
LangLanguage SwiftSwift
License MIT
ReleasedLast Release Oct 2017
SwiftSwift Version 3.2
SPMSupports SPM

Maintained by Paul Schifferer.



  • By
  • Paul Schifferer

A framework for providing an app "on-boarding" UI

Usage

Conductor provides a user interface for on-boarding users to a new app, or to an updated version
of an app.

Integration

Setup the data source

The first thing you need to do to get Conductor working is to setup a data source that will
feed the presentation.

let pages = [
    ConductorPageData(bodyText: "Page 1", image: page1Image),
    ConductorPageData(bodyText: "Page 2", image: page2Image),
    ConductorPageData(bodyText: "Page 3"),
]
let dataSource = ConductorDataSource(pageData: pages)

Create the view controller

Once the data source is setup, create the view controller and present it:

// TODO: make this view controller conform to ConductorDelegate

let vc = Conductor.viewControllerWithDataSource(dataSource, delegate: self)
// populate the appearance properties
Conductor.titleFont = appTitleFont
Conductor.textFont = appTextFont
// more...

self.present(vc, animated: true, completion: nil)

In the delegate, implement the following methods:

func conductorControllerFinished(_ controller : ConductorViewController) {
    // the user made it to the end, dismiss the controller
    controller.dismiss(animated: true, completion: nil)
}

func conductorController(_ controller : ConductorViewController, userWantsToSkipAtPage pageNumber : Int) {
    // the user decided they've seen enough, dismiss the controller
    // maybe save the page for later
    controller.dismiss(animated: true, completion: nil)
}

Copyright

Copyright © 2016-7 Pilgrimage Software

License

See LICENSE for details.