Blurring the background

The first naïve idea would be to change the level of blurriness depending on the position of scrollView, but this will be really inefficient because the blur operation is CPU-intensive, and it won't be smooth on older devices.

So, the idea is to trick the user. Instead of blurring the image at every change of position of scrollView, we blur the image, only before setting it to UIImageView. Then, we set the alpha channel to 0 (which means transparent). Next, we change the alpha depending on the position, reaching opaque when the scrollView offset reaches half.

First of all, we need to import the framework to blur the image:

import FXBlurView

Then, we need to create the overlay view and set it as subview:

private let overlayView ...

Get Swift 2 By Example now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.