Book Image

iOS 12 Programming for Beginners - Third Edition

By : Craig Clayton
Book Image

iOS 12 Programming for Beginners - Third Edition

By: Craig Clayton

Overview of this book

Want to build iOS 12 applications from scratch with the latest Swift 4.2 language and Xcode 10 by your side? Forget sifting through tutorials and blog posts; this book is a direct route to iOS development, taking you through the basics and showing you how to put principles into practice. Take advantage of this developer-friendly guide and start building applications that may just take the App Store by storm! If you’re already an experienced programmer, you can jump right in and learn the latest iOS 12 features. For beginners, this book starts by introducing you to iOS development as you learn Xcode and Swift. You'll also study advanced iOS design topics, such as gestures and animations, to give your app the edge. You’ll explore the latest Swift 4.2 and iOS 12 developments by incorporating new features, such as the latest in notifications, custom-UI notifications, maps, and the recent additions in Sirikit. The book will guide you in using TestFlight to quickly get to grips with everything you need to get your project on the App Store. By the end of this book, you'll be ready to start building your own cool iOS applications confidently.
Table of Contents (27 chapters)
Free Chapter
1
Getting Familiar with Xcode

Getting data

To get our data out of the plist, add the following method above loadData() inside of ExploreDataManager:

func fetch() {
for data in loadData() {
print(data)
}
}

Our fetch() method is going to loop through our dictionary data from the plist. Here is what your file should look like now:

Inside of your ExploreViewController.swift file, delete the previous print statement that was inside your viewDidLoad() and replace it with the following:

let manager = ExploreDataManager()
manager.fetch()

Let's build and run the project by hitting the Play button (or use command + R). You will notice that, in the Debug Panel, every time our loop runs, it gives a dictionary object, such as the following:

The above print statement is exactly what we want. Now, inside of ExploreDataManager, add the following above our fetch method:

fileprivate var items:[ExploreItem] = []

Next...