Property List Driven Apps with Swift

Peruse dynamic tables, and embed any web content you like, all based on property lists that control your app's data.
3.7 (6 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
115 students enrolled
$19
$20
5% off
Take This Course
  • Lectures 19
  • Length 3 hours
  • Skill Level Intermediate Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 6/2015 English

Course Description

Have you ever wanted to update an app without resubmitting a new build to Apple? Have you ever wanted to dynamically display web pages in your app, each with the potential to contain embeds of YouTube videos, Vimeo video, Vine embeds, images, etc. Or have you ever thought about pulling in data from a web page into your app, perhaps with a little sprinkle of PHP? How to do all that and more awaits you in this latest iOS video tutorial series with Swift 1.2!

Read the course curriculum below.

Initial Setup with Auto Layout

In this first video we will look at the initial layout of the app. This involves adding a UITableView, UIWebView and Navigation Bar to our Main storyboard file. If you have no interest in learning (or relearning Auto-Layout) than this lesson is completely skippable and you can download the starting project, with the layout already included.

Displaying a Web View and Parsing the Property List

In these next video tutorials we will connect our IBOutlets and IBActions, make our first web request (display any site/page you want in the app), do a quick parse of the Property List, then fully parse the property list and feed all of our data into a UITable. The data is sub-sectioned so for example, we will click on a broad section of data (like Topics), then click another section (like Courses), then choose from links within that section (for example, a specific Lesson to view). This setup can be used for any kind of data.

Sending Query String Variables from the App and Receiving HTML Data Back

In this video tutorials we will learn how to send query string variables from an iOS app and use them within the content shown in our UIWebView. So for example, we might open a webpage like….video_player?id=12345 , where the page then displays a YouTube or Vimeo embed with the ID of 12345. So using this method your Property List can open a single page and feed in countless variables for different links, or information of any sort. Along with that we can include custom titles within the app based on what we're displaying. We will also experiment with reading data back in from a webpage (without actually showing it). So for example, this could be used to act as a kind of gateway within the app, if a particular webpage's content displayed the word “no", then the app wouldn't allow a particular set of functionality. Or this could just be used to display the “message of the day" . Finally we will setup a back button so users can reverse back up the Property List data in the UITableView.

Updating the Property List from a copy stored on your website

In these next videos we mostly deal with an optional add on to the course which involves uploading a second copy of the Property List to a server and making the app use it as the primary source of data. If that Property List is unreachable, the app will fallback to checking on a locally saved version of that updated property list, and if that fails, the app will resort to using the original Property List submitted with the bundle to the App Store.

Adding Thumbnail Images to the UITableView

This video tutorial teaches how to include an image (of any size) in the UITableView to make for an obviously more eye-popping visual experience to a normal list-only table view. The property list can define either an image in the main app bundle, or an image stored on a server (both can be used in the same table). We will then write the code to load either. If an image stored at a URL is defined, we will cache that image, so after the initial load, our UITableView loads only the cached version. Creating an image cache sounds fancy but it is simply a mutable dictionary (which is useful for many projects!)

What are the requirements?

  • Xcode 6.3 or higher
  • Work on a Mac
  • Be able to upload files to a server (optional, but recommended)

What am I going to get from this course?

  • Update an entire app without ever resubmitting a new build to Apple by using a Property List saved to your website.
  • Create a multi-tiered Table view, one with sections, sub-sections, and unlimited links (all populated via a property list) which can provide users the option to open web pages, images, videos, or do anything your app requires. For example, choose levels in a game.
  • Display web pages with embedded content from YouTube, Vimeo, Vine, Instagram, or wherever, using query string variables added to the end of URL’s.
  • Pull html data / variables from a web page back into your app. Useful for any number of things, for example, allowing or denying access to an area of the app.
  • Display and cache images in your app from files stored on your website. Imagine updating banners in your app by simply uploading new images.
  • Gain more knowledge of Swift 1.2

What is the target audience?

  • Preferably students with some knowledge of Swift or a comparable programming language
  • An existing familiarity with programming concepts like for statements, variables, etc
  • Anyone looking to build up their personal arsenal of Swift knowledge

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Initial Setup with Auto Layout
Introduction
Preview
03:50
Course Projects
Article
Initial Setup and Auto Layout Tutorial (optional viewing)
Preview
13:03
Auto Layout (continued)
12:59
Section 2: Displaying a Web View and Parsing the Property List
10:42

In these next video tutorials we will connect our IBOutlets and IBActions, make our first web request (display any site/page you want in the app), do a quick parse of the Property List, then fully parse the property list and feed all of our data into a UITable. The data is sub-sectioned so for example, we will click on a broad section of data (like Topics), then click another section (like Courses), then choose from links within that section (for example, a specific Lesson to view). This setup can be used for any kind of data.

Setting up the Property List
06:12
First Pass at Parsing the Property List
05:37
Fully Parsing the Property List
08:38
Fully Parsing the Property List (continued)
15:25
Section 3: Sending Query String Variables from the App and Receiving HTML Data Back
16:31

In this video tutorials we will learn how to send query string variables from an iOS app and use them within the content shown in our UIWebView. So for example, we might open a webpage like.... site.com/video_player?id=12345 , where the page then displays a YouTube or Vimeo embed with the ID of 12345. So using this method your Property List can open a single page and feed in countless variables for different links, or information of any sort. Along with that we can include custom titles within the app based on what we're displaying. We will also experiment with reading data back in from a webpage (without actually showing it). So for example, this could be used to act as a kind of gateway within the app, if a particular webpage's content displayed the word "no", then the app wouldn't allow a particular set of functionality. Or this could just be used to display the "message of the day" . Finally we will setup a back button so users can reverse back up the Property List data in the UITableView.

Using HTML Data as an App Gateway (or for any String Data)
14:35
Reversing the Back though the Property List Tiers and Setting the Nav Title
07:56
Section 4: Updating the Property List from a copy stored on your website
04:04

In these next few videos we mostly deal with an optional add on to the course which involves uploading a second copy of the Property List to a server and making the app use it as the primary source of data. If that Property List is unreachable, the app will fallback to checking on a locally saved version of that updated property list, and if that fails, the app will resort to using the original Property List submitted with the bundle to the App Store.

Updating the Property List from a Server-Stored Copy
13:20
Updating the Property List from a Server-Stored Copy (continued)
10:08
Project Wrap Up
02:52
Section 5: Adding Thumbnail Images to the UITableView
12:17

This video tutorial teaches how to include an image (of any size) in the UITableView to make for an obviously more eye-popping visual experience to a normal list-only table view. The property list can define either an image in the main app bundle, or an image stored on a server (both can be used in the same table). We will then write the code to load either. If an image stored at a URL is defined, we will cache that image, so after the initial load, our UITableView loads only the cached version. Creating an image cache sounds fancy but it is simply a mutable dictionary (which is useful for many projects!)

Adding Thumbnails (continued)
09:15
Conclusion?
00:19

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Justin Dike, CartoonSmart / Owner / Leader Developer and Instructor

Justin Dike is the founder of CartoonSmart one of the internet's first video training websites. He is a long-time illustrator and animator, focusing mostly on Adobe Flash, and experienced programmer with Swift, Sprite Kit, Actionscript 3, Objective C and Cocos2d. For CartoonSmart he has recorded hundreds of hours of video tutorials and recently published his first full length book titled iOS Programming with Xcode and Cocos2d available in the iBookstore. Justin has also developed many iOS games, including a side scrolling game engine.

Ready to start learning?
Take This Course