Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Swift and iOS 8 Apps in 31 Days
Start Here
Introduction
Xcode Setup - Download Xcode 6 from the Mac App Store (0:56)
Xcode Setup - Open Xcode 6 on Mac (1:57)
Xcode Setup - New Xcode Project - First iPhone App (4:28)
Day 1 Lesson
1.1 Lecture - Welcome to Swift and iOS 8 Apps in 31 Days (6:53)
1.2 Tutorial - Text Labels, Animations, Physics, and Gestures (1:21)
1.3 Tutorial - Add Text Labels in Code (12:12)
1.4 Tutorial - Animate Text Labels using Spring Physics (8:32)
1.5 Tutorial - Add Tap Gestures to Animate Refactored Code from a Method (8:46)
1.6 Tutorial - Troubleshooting Common Mistakes (13:37)
1.7 Swift Q&A - Day 1 (9:43)
1.8 Code Exercise - Change Animation Directions and Physics
1.9 Notebook Activity - What did you create?
Day 2 Lesson
2.0 Day 2 Introduction - Xcode, UI Design, Auto Layout, and Code (1:47)
2.1 Lecture - Introduction to Xcode (3:35)
2.2 Lecture - Xcode Panels and Tabs (5:51)
2.3 Lecture - Xcode App Flow (5:11)
2.4 Tutorial - Get User Input with Text Fields (1:55)
2.5 Tutorial - Design the iPhone User Interface (11:11)
2.6 Tutorial - Auto Layout for Beginners (12:02)
2.7 Tutorial - Connect the User Interface to Code (4:32)
2.8 Tutorial - Parse Text String Input as an Integer (8:52)
2.9 Tutorial - Troubleshooting User Interface Bugs (14:12)
2.10 Bug Fix - Three Xcode UI Connection Bugs (11:47)
2.11 Bug Fixes - Size Classes for Compact Any (6:18)
2.12 Q&A - Common Problems and Video Downloads (10:23)
2.13 Code Exercise - Experiment with Double or Float Numbers
2.14 Notebook Activity - Auto Layout and User Interface Design
Day 3 Lesson
3.0 Lecture - Xcode Debugger, Playgrounds, and Feedback (1:37)
3.1 Lecture - Xcode Overview (0:56)
3.2 Tutorial - Xcode Debugging with Breakpoints and stack frames (9:00)
3.3 Tutorial - Playgrounds Introduction (8:20)
3.4 Tutorial - Adding Images to Playgrounds and UIView iPhone Screens (15:28)
3.5 Tutorial - Add an Image to Xcode 6 (2:49)
3.6 Tutorial - Troubleshooting Playgrounds (6:03)
3.7 Q&A - Apps and Learning (14:53)
3.8 Code Exercise - Play with the Playgrounds
3.9 Notebook Activity - What don't you understand?
Day 4 Lesson
4.0 Lecture - Introduction to Variables and Types (1:08)
4.1 Lecture - Variables (6:35)
4.2 Lecture - Types (2:02)
4.3 Lecture - var and let Keywords (2:14)
4.4 Tutorial - Strings and Characters (6:23)
4.5 Tutorial - Int and Double Numbers (2:02)
4.6 Tutorial - Tip Calculator App Introduction (1:23)
4.7 Tutorial - Create the Tip Calculator User Interface (UI) (9:32)
4.8 Tutorial - Connect Interface to Code in the Tip Calculator (2:58)
4.9 Tutorial - Auto Layout for the Tip Calculator (11:46)
4.10 Tutorial - Tip Math Logic Makes the App Work (6:10)
4.11 Tutorial - Finding Methods and Currency Number Formatting (14:06)
4.12 Code Exercise - Modify the Tip Calculator (1:02)
4.13 Q&A (2:02)
4.14 Tip Calculator Auto Layout Problem and Solution (10:03)
Day 5 Lessons
5.0 Lecture - Arrays, Loops, and Pan Gestures (1:10)
5.1 Lecture - You can learn anything (1:28)
5.2 Lecture - Make an Array Word List (10:59)
5.3 Lecture - Use the for loop (10:04)
5.4 Lecture - Display a UIView and Label in Playgrounds (12:36)
5.5 Lecture - Multiple Labels using Loops and Random Numbers (9:07)
5.6 Lecture - Transition from Playgrounds to iPhone App (2:44)
5.7 Lecture - Pan Gestures for Dragging and Moving Labels (14:04)
5.8 Q&A (7:35)
5.9 Lecture - Image Backgrounds for Apps (8:54)
5.10 Code Exercise - Design UI for a Weather App and Photo File paths
Day 6 and Day 7 - 1st App Challenge
6.0 App Challenge - Build a Word Magnets app from Scratch (0:58)
6.1 Tutorial - App Flow with App Delegate and ViewControllers (7:01)
7.0 App Challenge - Top Student Apps and Solutions (5:39)
Day 8 Section
8.0 Lecture - Conditionals and Optionals (1:26)
8.1 Lecture - Conditional Statements (6:45)
8.2 Tutorial - Conditional Code (2:56)
8.3 Tutorial - Greeting App (7:45)
8.4 Tutorial - Greeting App with Current Hour from NSDateComponents (5:22)
8.5 Lecture - Optionals (3:18)
8.6 Tutorial - Optionals in Code (3:48)
8.7 Tutorial - Optional Force Unwrap (6:01)
8.8 Tutorial - Optional Binding with if statements (4:19)
8.9 Code Exercise - Create a number guessing game (2:28)
8.10 Code Exercise - Number Guessing Hints (7:07)
8.11 Q&A (9:33)
8.12 Bug Fix - Number Guessing Game - Auto Layout Issue and Solution (18:38)
8.13 Notebook Activity - Conditionals and Optional Variables
Day 9 Lessons
9.0 Lecture - Functions (1:07)
9.1 Lecture - Functions and Parameters (7:01)
9.2 Lecture - Functions and Return Values (5:51)
9.3 Lecture - Functions Calling Functions - Code Composition (6:19)
9.4 Tutorial - Functions vs Methods (6:01)
9.5 Tutorial - Function Parameter Names (5:46)
9.6 Q&A (11:24)
9.7 Code Exercise - Turkey Cooking Calculator
9.8 Notebook Activity: Functions
Day 10 Lessons
10.0 Lecture - Objects (0:51)
10.1 Lecture - Objects in Swift (5:52)
10.2 Lecture - Object Concepts (7:42)
10.3 Lecture - Using Objects to make a Stop Watch (1:18)
10.4 Tutorial - Stop Watch UI Design (9:21)
10.5 Tutorial - Stop Watch Auto Layout (5:43)
10.6 Tutorial - Stop Watch UI to Code and Bugfix (8:59)
10.7 Tutorial - Start Button Logic (14:48)
10.8 Tutorial - Stop Time Button Logic (7:55)
10.9 Tutorial - Date Formatting for Hours Minutes and Seconds (11:17)
10.10 Tutorial - Stop Watch Reset Logic and Methods (8:51)
10.11 Tutorial - Stop Watch Resume Time (6:43)
10.12 Q&A (5:29)
10.13 Code Exercise - Make an Event Countdown
Day 11 Lesson
11.0 Lecture - Keyboard Fixes and Image Pickers Introduction (2:02)
11.1 Tutorial - Hide the Keyboard after User Input (12:04)
11.2 Tutorial - Dynamic Text Changes (3:27)
11.3 Tutorial - Load Images from the UIImagePickerController (0:46)
11.4 Tutorial - Load Images from the Image Picker (14:25)
11.5 Tutorial - Display the Image in a UIImageView (8:26)
11.6 Tutorial - Take a screenshot of the iPhone screen (15:00)
11.7 Tutorial - Take a screenshot of non-UI content (6:28)
11.8 Q&A (6:01)
Day 12 Lesson
12.0 - App Panel with Zombie Highway, Fantastical, Square, and Artwork Evolution (64:11)
12.1 Q&A (4:04)
12.2 Notebook Activity - Your App Idea
Day 15 Lesson
15.0 Lecture - Saving and Loading Introduction
15.0 Lecture - Saving and Loading Data and Images (0:57)
15.1 Lecture - Save and Load Data on iOS Introduction (7:07)
15.2 Lecture - Learn about the iPhone app File System (16:20)
15.3 Lecture - Searching iPhone and Swift Documentation Effectively (10:27)
15.4 Tutorial - Find the iOS 8 Simulator Files on Mac (7:04)
15.5 Tutorial - Download the App Data Files from your iPhone Device (4:12)
15.6 Tutorial - Get the Documents Folder Path as a String (15:45)
15.7 Tutorial - Helper Function to Create a File Path (4:01)
15.8 Tutorial - Save Image Data to the Documents Folder (12:54)
15.9 Tutorial - Load Image Data from the Documents Folder (7:09)
15.10 Tutorial - Save Text Data to the Documents Folder (8:44)
15.11 Tutorial - Load Text Data from the Documents Folder (8:34)
15.12 Q&A (11:16)
15.13 Code Exercise - Inventory Tracker
15.14 Notebook Activity - Saving and Loading Basics
Day 13 and 14 - 2nd App Challenge
13.1 Photo Collage or Photo Caption Generator (11:11)
Day 16
16.0 Lecture - Saving and Loading with NSCoding (1:01)
16.1 Lecture - Custom Objects and the NSCoder Protocol (16:20)
16.2a Tutorial - Inventory Tracker UI Design (2:02)
16.2b Tutorial - Tap gesture on image view and UIImagePickerController (10:55)
16.2c Tutorial - Parsing user input to save inventory data to disk (2:02)
16.3 Tutorial - Creating a Custom Object in Swift (15:27)
16.4 Tutorial - Conform to the NSCoding Protocol (2:02)
16.5 Tutorial - Best Practices for NSCoding (5:11)
16.6 Tutorial - Archiving Custom Objects using NSKeyedArchiver (11:05)
16.7 Tutorial - Unarchiving Custom Objects using NSKeyedUnarchiver (8:51)
16.8 Tutorial - Custom Inventory Object with Array and Settings Data (2:02)
16.9 Tutorial - Make Inventory Conform to NSCoding Protocol (8:39)
16.10 Tutorial - Inventory and File Path Properties (2:02)
16.11 Tutorial - Load an Inventory Object from Disk (2:02)
16.12 Tutorial - Save an Inventory Object to Disk (14:36)
16.13 Tutorial - Save Method Stubs and Cost Validation (15:15)
16.14 Tutorial - Validate Title and Image for Creating Item objects (10:37)
16.15 Tutorial - Previous and Next Buttons for Displaying Items (15:01)
16.16 Tutorial - Testing Saving and Loading with Previous and Next buttons (2:02)
16.17 Q&A (7:03)
16.18 Code Exercise - Address Book Contact
16.19 Notebook Activity - Saving and Loading Data
Day 17
17.0 Lecture - Custom Views and Object Inheritance (1:20)
17.1 Lecture - Inheritance and UIView (13:37)
17.2 Lecture - Resources to learn about UIView and subclasses (3:40)
17.3 Tutorial - Creating and using UIView and Subclasses (14:35)
17.4 Tutorial - Leverage custom graphics drawing using Core Graphics (13:17)
17.5 Tutorial - Multiplication Table App (7:44)
17.6 Tutorial - Multiplication Table via Code Frames and Math (12:44)
17.7 Tutorial - UISlider and Target Action Method (15:15)
17.8 Tutorial - Multiplication Table Method Logic and Final Output (14:59)
17.9 Tutorial - Multiplication Table Corner Radius and Animations (13:13)
17.10 Code Exercise - Multiplication Table App
17.11 Notebook Activity - Custom Views
Day 18 Lesson
18.0 Lecture - Custom UIView Introduction (0:54)
18.1 Tutorial - Design a Custom View in Xcode from an xib file (10:45)
18.2 Tutorial - Setup Auto Layout for the Custom View (4:37)
18.3 Tutorial - Add code to load the xib user interface file (16:52)
18.4 Tutorial - Fix Auto Layout when working with images (3:56)
18.5 Tutorial - Add IBDesignable and IBInspectable attributes to control the UI in a Storyboard file (13:01)
18.6 Tutorial - Further Customization of a Custom UIView Designed in Xcode (14:44)
18.7 Bug Fix - Debug Custom Views from Storyboard (8:37)
18.8 Code Exercise - Create a Custom Slider Wheel
18.9 Notebook Activity - .xib custom views
Day 19 Lesson
19.0 Lecture - Multiple View Controllers and Data Sharing (1:04)
19.1 Lecture - Model View Controller (2:02)
19.2 Lecture - Leveraging Storyboards to Create Multiple Screens in Xcode 6 (2:24)
19.3 Tutorial - Creating Multiple View Controllers in Storyboard files (8:59)
19.4 Tutorial - Segue hooks with prepareForSegue and unwindToViewController (2:02)
19.5 Tutorial - View Controller property values for data sharing (13:55)
19.6 Tutorial - Create a Delegate Protocol to Share Data to a View Controller (13:38)
19.7 Bug Fix - Fixing implicitly unwrapped optional values in a View Controller (2:02)
19.8 Tutorial - Conforming to the Delegate Protocol (2:02)
19.9 Tutorial - Display a Storyboard View Controller Programmatically (7:59)
19.10 Code Exercise - Color Picker and Delegate Protocol
19.11 Notebook Activity - Multiple App Screens
Day 20 Lesson - 3rd App Challenge
20.0 Lecture - Flash Cards - 3rd App Challenge (2:02)
Day 22 Lesson
22.1 Lecture - Tab Bar Controller for multiple screen apps (2:02)
22.2 Tutorial - Create a Tab Bar App from Scratch (2:02)
22.3 Tutorial - Setup Tab Bar Items with Text and a Templated Image (2:02)
22.4 Tutorial - Adding a new View Controller and Tab Bar Item (5:41)
22.5 Tutorial - Creating View Controllers and app flow (9:27)
22.6 Tutorial - Conforming to the UITabBarControllerDelegate methods (7:53)
22.7 Tutorial - Working with View Controllers in the TabBarViewController (2:02)
22.8 Tutorial - Create UITabBarController in code (2:02)
22.9 Code Exercise
Day 23 Lesson
23.1 Lecture - Introduction to JSON and iTunes search queries (9:22)
23.2 Lecture - JSON structure and URL search structure (2:02)
23.3 Tutorial - NSURLSession tutorial for web service data (12:20)
23.4 Tutorial - Convert NSData using NSJSONSerialization to a NSDictionary (5:45)
23.5 Tutorial - App Data and JSON dictionary parsing (2:02)
23.6 Tutorial - GCD threads and app data handoffs between threads (10:08)
23.7 Code Exercise - Parse JSON data from Apple (3:46)
Day 24 Lesson
24.1 Lecture - Table View introduction (2:02)
24.2 Tutorial - Create a Table View from Scratch (10:52)
24.3 Tutorial - Load data into the Table View from the web (8:55)
24.4 Lecture - Load Images from the iTunes web service (8:00)
24.5 Tutorial - Download the correct image size from Apple (2:02)
24.6 Tutorial - Download images in the background with GCD (2:02)
24.7 Tutorial - Decompressing Images and Caching images with NSCache (9:56)
24.8 Code Exercise - Display the top 200 apps on the App Store (3:28)
Day 25 Lesson
25.1 Lecture - Facebook SDK for iOS Apps in Swift (2:02)
25.2 Tutorial - Facebook app setup and SDK installation (2:02)
25.3 Tutorial - Facebook Xcode project setup (2:02)
25.4 Tutorial - Integrate Objective-C with Swift using a Bridging Header file (2:02)
25.5 Tutorial - Facebook Login Button in code (11:45)
25.6 Tutorial - Facebook Profile and name user interface (9:46)
25.7 Tutorial - Circle profile picture with border and drop shadow (14:17)
25.8 Tutorial - Facebook Logout delegate methods (7:38)
25.9 Tutorial - Handling Facebook Errors and converting Objective-C to Swift (2:02)
25.10 Tutorial - Using UIAlertController to display messages for the user (2:02)
25.11 Tutorial - Fixing Common bugs with Facebook Authentication (4:01)
Day 26 Lesson
26.1 Tutorial - Facebook Graph API Introduction (10:18)
26.2 Tutorial - Your first Graph API call from your iPhone app (8:10)
26.3 Lecture - Permissions on Facebook (2:02)
26.4 Tutorial - Getting access to Facebook friends via Graph API (13:11)
26.5 Tutorial - Requesting Permission for friends and mobile API changes (6:19)
26.6 Tutorial - Getting Photos and Albums from Facebook Graph API (2:02)
26.7 Tutorial - Checking permissions on Facebook Graph API (15:51)
26.8 Tutorial - Request permissions on Facebook Graph API (13:06)
26.9 Tutorial - Posting messages to Facebook Graph API (2:02)
26.10 Tutorial - Parsing photo album data for iPhone apps (12:09)
26.11 Lecture - Additional lessons on Facebook (0:53)
Day 28 Lesson
28.1 Lecture - Facebook Album Table View (0:54)
28.2 Lecture - Facebook album data discussion (2:02)
28.3 Tutorial - Making a Facebook Album data object (13:34)
28.4 Tutorial - Making a Table View for Facebook Albums (2:02)
28.5 Tutorial - Cover photo Facebook data request (2:02)
28.6 Tutorial - Download image from Facebook in Table View (2:02)
28.7 Tutorial - Decompress and cache images that are downloaded from Facebook (7:26)
Day 29 Lesson
29.1 Lecture - Facebook photos and Collection Views (2:02)
29.2 Lecture - Facebook photos and albums documentation (2:02)
29.3 Tutorial - Facebook Photo data object (2:02)
29.4 Tutorial - Designing the UICollectionView screen with image cells (13:49)
29.5 Tutorial - Setup an image UICollectionViewCell class (13:32)
29.6 Tutorial - Request photo list from Facebook Graph API (2:02)
29.7 Tutorial - Find the largest photo URL from the Facebook Graph API (2:02)
29.8 Tutorial - Parse Smallest image url and create FacebookPhoto object (2:02)
29.9 Tutorial - Download thumbnails from Facebook in a Collection View (2:02)
29.10 Tutorial - Crop UIImage as a square image centered (2:02)
29.11 Tutorial - Crop album photos and clean up the user interface (12:00)
29.12 Tutorial - Delegate methods and final touches for photo grid view (19:42)
29.13 Code Exercise - Add paging support to your album or photo lists (3:30)
Day 30 Lesson
30.1 Tutorial - iOS Developer Program and Account Setup in Xcode 6 (15:11)
30.2 Tutorial - Preparing to submit app to TestFlight or the App Store (2:02)
30.3 Tutorial - Making an app on iTunes Connect (2:02)
30.4 Tutorial - App icons and submitting your app Apple (12:29)
Day 31 Lesson
31.1 Tutorial - UIPickerView Demo for selecting items (17:42)
2.12 Q&A - Common Problems and Video Downloads
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock