Building a Xamarin iOS swipeable multiple step process used for onboarding

Share the joy

I’m a .Net developer at JustGiving and I recently had to build an onboarding process in the JustGiving iOS app that consists of a series of screens that can be navigated by swiping forward and backward. Here is how I did it.



The solution

I used a UIPageViewController with a UIPageViewControllerDataSource for navigating through steps and a UIPageControl for the progress indicator.

The end result


Each step is a UIViewController that implements the following interface.

UIViewController step

A step publishes its index when it is activated or de-activated as the active step. This is done in ViewDidAppear andViewWillDisappear.


The data source is a UIPageViewControllerDataSource that is constructed with a list of IMultiStepProcessStepsteps.


The UIPageViewController is constructed from the data source.


A UIPageControl is used to indicate which step is active.


Putting it all together in the OnBoardingViewController

The event handlers for when a step is activated and de-activated are used to set the current page index and to update any other parts of the UI as needed.

Get the steps that form part of the process and wire them up to StepActivated and StepDeactivated events.

Setup and add the UIPageViewController and UIPageControl controls to the view.


At JustGiving we’re getting better and better at A/B testing new feature roll outs and in this case we were no different. We tested app versions where the user a was shown no onboarding step, a longer version and finally an abridged version of the very slides shown at the top of this post. After initial roll out we’re pleased to see that the new onboarding process improved login conversion by 14% and increased day 1 retention (ie. the % of people who revisit the app 1 day after downloading) by 15%. In the end the most successful version was the shortened version of the process which means we’ll continue to present this feature to new users of the app.

This was originally posted at



Share the joy

About the author

Alwyn Lombaard

View all posts

Leave a Reply

Your email address will not be published. Required fields are marked *