Book Image

Swift 2 Blueprints

By : Cecil Costa
Book Image

Swift 2 Blueprints

By: Cecil Costa

Overview of this book

In this book, you will work through seven different projects to get you hands-on with developing amazing applications for iOS devices. We start off with a project that teaches you how to build a utility app using Swift. Moving on, we cover the concepts behind developing an entertainment or social networking related application, for example, a small application that helps you to share images, audio, and video files from one device to another. You’ll also be guided through create a city information app with customized table views, a reminder app for the Apple Watch, and a game app using SpriteKit. By the end of this book, you will have the required skillset to develop various types of iOS applications with Swift that can run on different iOS devices. You will also be well versed with complex techniques that can be used to enhance the performance of your applications.
Table of Contents (15 chapters)
Swift 2 Blueprints
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Adding the page view controller


To display the city's information, we are going to use a page view controller. This way, we can navigate through its information as if we were reading a book. To do it, we are going to add a new file called CityOptionsViewController.swift to the ViewControllers group.

Open this file and create a class that inherits from UIPageViewController and also stores CityInfo. This class should also be its own data source, as it needs to know which view controller comes next when the user decides to turn a page. As we don't yet have any of the view controllers that are going to hang from this page view controller, we are going to implement the mandatory methods that will return nil. Let's start implementing the CityOptionsViewController class with a minimum code by typing the following code:

import UIKit

class CityOptionsViewController : UIPageViewController, UIPageViewControllerDataSource {
    var cityInfo:CityInfo!
    override func viewDidLoad() {
        super.viewDidLoad...