Find online courses made by experts from around the world.
Take your courses with you and learn anywhere, anytime.
Learn and practice real-world skills and achieve your goals.
**** UPDATE - We've included source projects updated for Swift 3. The code changes from Swift 2.2 to 3 were VERY minor changes (as you'll see from the code)! With that said, here's our original description for the course with plenty of references to Swift 2 and Xcode 7...
This series of videos will focus on iOS9-related topics. All of these use Swift, SpriteKit, Xcode 7/8 and apply in most cases to both iOS and tvOS. There is no recommended viewing order for these topics. Jump right into any of the topics below:
On-Demand Resources in iOS9
In this video tutorial we will discuss the Swift code related to loading On-Demand Resources, or simply ODR. ODR can drastically reduce the initial size of your app, and allow your users to only download what they need, when they need it. For example, you could hold off loading images / sounds for level 2 of a game if the player will still stuck on level 1.
Take Photos and Access the Camera Roll then Use them in a Sprite Kit Game!
Learn how program a SpriteKit and Swift 2 based app that allows user's the option to add pictures from their camera or camera roll into the game or scene, mask the images, then adjust the layout of the picture within the mask (zoom in / out, move it, rotate, squash and stretch it). The edited masked-image can then appear in ANY other scene throughout the lifespan of the app (it's saved as an NSUserDefault).
In-App Purchasing for iOS or tvOS Apps
Learn how to sell Consumable and Non-Consumable Products in your iOS9 or tvOS, Swift 2-based Sprite Kit App.
NSUserDefaults with Swift 2 (and how to save the location of nodes)
In this tutorial, we'll look at saving various types of data to the NSUserDefaults. The NSUserDefaults is great for information that you want to exist even if the app is closed and reopened. As long as the user does not delete the app entirely, the data is still there (the data is basically like a property list that is saved at runtime). So we'll look at saving String objects, Ints, Bools, Arrays and finally a Dictionary (where objects are moved at runtime and their location is saved for the next time the app is run).
Keyboard Input with Swift 2 for iOS and tvOS
This video tutorial will teach you how to open a view to enter keyboard input, close it and save the entered values as an NSUserDefault. Along the way you'll also see how to include placeholder text (to easily adjust the width / height, font, and font size of the input area), include custom fonts for the input text, and test the values of the input text. For example, you could include a Parental Gate in your app that prompts parents to enter a specific value, like 12 + 3, then test to see if they typed in 15. This code has been test on both iOS and tvOS devices.
Parsing a property list with Swift 2
In these videos you will learn how to parse a property list with Swift 2 and organize data (Strings, Numbers, Arrays or Dictionaries with native Swift types). Plists are useful for just about any iOS / tvOS app, but in this particular example, we will create hypothetical level data (an Array of Dictionaries), and discuss reloading the same GameScene class while "leveling up" each time.
NSNotifications with Swift 2
In this Swift 2 video tutorial, we will work with NSNotifications to call functions / send data between classes without breaking good MVC pattern (for example, having subviews send info to parent views). In our example, we'll make the GameScene post a notification to the GameViewController. We'll even pass dictionary data using the userInfo parameter.
Helper Classes with Swift 2
In this short video tutorial, we'll look at creating static variables and functions in a Helper class with Swift 2. This Helpers class will be accessible to any other class in your app, so it's great for reusable functions and saving certain variables. This is similar to working with Singleton classes, and for good measure, we'll even create a Singleton class to show you the subtle differences.
Game Center - Achievements and Leaderboards
In these Swift 2 video tutorials, we will work with Game Center to post scores to a Leaderboard and note progress toward unlocking Achievements. This of course involves setting up both a Leaderboard and Achievement in iTunes Connect, then authenticating the local player, and all the code involved with posting to Game Center. As always, you'll learn every step of the code. The finished project is SpriteKit and Swift 2 based.
Not for you? No problem.
30 day money back guarantee.
Learn on the go.
Desktop, iOS and Android.
Certificate of completion.
|Section 1: Introduction|
|Section 2: Source Files for All Tutorials|
Source Projects for All Tutorials
|Section 3: On-Demand Resources in iOS9|
On Demand Resources in iOS9 - Part 1
On Demand Resources in iOS9 - Part 2
|Section 4: Take Photos and Access the Camera Roll then Use them in a Sprite Kit Game|
Camera Roll Sprite Kit Project - Part 1Preview
Camera Roll Sprite Kit Project - Part 2
Camera Roll Sprite Kit Project - Part 3
Camera Roll Sprite Kit Project - Part 4
Camera Roll Sprite Kit Project - Part 5
Camera Roll Sprite Kit Project - Part 6
Camera Roll Sprite Kit Project - Part 7
Camera Roll Sprite Kit Project - Part 8
|Section 5: In-App Purchasing for iOS or tvOS Apps|
In-App Purchasing Tutorial - Part 1 - Initial SetupPreview
In-App Purchasing Tutorial - Part 2 - Parsing Plist and Store Setup
In-App Purchasing Tutorial - Part 3 - Buying a Product
In-App Purchasing Tutorial - Part 4 - Delivering the Product
In-App Purchasing Tutorial - Part 4 - Delivering the Product (continued)
In-App Purchasing Tutorial - Part 5 - Restoring Purchases
In-App Purchasing Tutorial - Part 5 - Restoring Purchases (continued)
In-App Purchasing Tutorial - Part 6 - Alerts
In-App Purchasing Tutorial - Part 7 - Quick Setup & Review
|Section 6: NSUserDefaults with Swift 2 (and how to save the location of nodes)|
NSUserDefaults with Swift 2
|Section 7: Keyboard Input with Swift 2 for iOS and tvOS|
iOS / tvOS Keyboard Input Tutorial - Part 1
iOS / tvOS Keyboard Input Tutorial - Part 2
|Section 8: Parsing a property list with Swift 2|
How to Parse a Property List - Part 1 - Strings and Arrays
How to Parse a Property List - Part 2 - Arrays of Dictionaries
|Section 9: NSNotifications with Swift 2|
Posting NSNotifications with Swift 2
|Section 10: Helper Classes with Swift 2|
Helper Classes with Swift 2
|Section 11: Game Center - Achievements and Leaderboards|
Game Center with Swift 2 - Initial Setup
Game Center with Swift 2 - Posting High Scores
Game Center with Swift 2 - Achievements
Game Center with Swift 2 - Clearing Achievements and Wrap Up
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.