Supporting Course for the iOS Developer Nanodegree
Welcome to UIKit Fundamentals! We are so excited to build iOS Apps with you!
Need help getting started?
Apple's The Swift Programming Language
You can download Supplemental Materials, Lesson Videos and Transcripts from Downloadables (bottom right corner of the Classroom) or from the Dashboard (first option on the navigation bar on the left hand side).
In this first lesson we want to take a close look at each object that is used to create an app. We’ll write an app completely in code, and then show how storyboard can be used to replace some of the code. Along the way we will cover object diagrams, target/actions, optionals, and making connections in Storyboard. We'll end with a Challenge App.
This lesson focuses on view presentation and segues, beginning with a comparison of modal presentation and navigation. We will explore multiple options for presenting both off-the-shelf and custom view controllers and finish up by building a version of Roshambo.
In this lesson students learn about the Delegate Design Pattern and explore in detail its use in the UITextField class. At the end of the lesson students will be challenged to implement a series of customized text fields.
In this lesson we'll dig into Table Views, a cornerstone of UIKit. We'll identify essential delegate and datasource methods, review Swift Collections, and discuss how UITableViews take advantage of reusable cells. After implementing an example table, we'll finish up with a Challenge App, an extension of the Roshambo app from Lesson 2.
This lesson focuses on Navigation, which is used when presenting a hierarchy of views from side-to-side. We'll talk about how navigation stacks function in UIKit, review Swift classes and structs, and implement a navigation structure for an example app. At the end of the lesson students will implement navigation controllers on their own in three different scenarios.
The final lesson covers skills specifically needed to build MemeMe, including: presenting the UIImagePickerController and the UIActivityView, adjusting the view to account for the keyboard, using image context, and sharing data across classes.
MemeMe is a meme-generating app that enables a user to attach a caption to a picture from their phone. After adding text to an image chosen from the Photo Album or Camera, the user can share it with friends. MemeMe also temporarily stores sent memes which users can browse in a table or a grid.
Thank you to Kim Dryden, Calvin Hu, and Trish McCallister for video production and editing. This course would not exist without their hard work and dedication. We are so lucky to have such a talented production team.