UIKit Fundamentals (Udacity)

Offered by Udacity,
UIKit Fundamentals (Udacity)

Learn the iOS User Interface Library. In this course, you will build a series of simple apps to become more comfortable with the UIKit framework and master its most widely used components. This framework constitutes the building blocks of the user interface for all iOS apps, and is crucial for any iOS Developer to be intimately familiar with.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

You’ve built your first iOS app. It was fun, but you might not be comfortable creating apps from scratch. After completing this course, you’ll have the skills you will need to create the UI elements for almost any app. During this course, you’ll learn everything you need to know about UIKit, from buttons to table views. To become fluent with UIKit requires practice, and this course will provide you with opportunities to create small working apps to build your skill set.

What You Will Learn

Lesson 1
How to Use Outlets and Actions

  • Connect outlets and actions first using only code and a second time using storyboard.
  • Use core UIKit classes like UIButton
  • UILabel and UISwitch.
  • Practice debugging problems with IBOutlets and IBActions.

Lesson 2
Learn to Present Views and Segue Between Views

  • See how Apple distinguishes between modal presentation and navigation.
  • Learn how to present views modally.
  • Use powerful UIKit classes like UIImagePickerController
  • UIAlertController and UIActivityViewController.

Lesson 3
What is the Delegate Pattern and how do you use it?

  • Learn how delegates make important connections between the model view and controller.
  • Implement UIKit components that make use of the delegate pattern
  • UITextField and UITextFieldDelegate.
  • Demonstrate your understanding by building a series of challenge apps.

Lesson 4
Build V1.0 of the Meme Me App

  • Enable the user to choose an image using UIImagePickerController and UIImagePickerControllerDelegate.
  • Adjust the keyboard so that it does not obscure UI elements.
  • Generate a meme and share it using a UIActivityView.

Lesson 5
Build Tables using the UITableView class

  • Learn the essential UITableViewDelegate and UITableViewDatasource methods.
  • Explore the code for several apps with tables and then implement your own UITableView.
  • Practice manipulating table cells.

Lesson 6
iOS App Navigation

  • Learn how iOS uses navigation stacks to manage multiple views in an app.
  • Create the navigation that enables a user to tap a row of a table and view the details of an item.
  • Learn navigation classes like UINavigationControll and UIBarButtonItem.

Lesson 7
Complete the Meme Me App

  • Take Meme Me to the next level with this final version of the app.
  • Learn a simple way to share data across classes using the AppDelegate.
  • Use UICollectionView to display the app's memes in a grid and UITabViewController to toggle between meme layouts.

Prerequisites and Requirements
This course assumes prior iOS experience. Specifically, it assumes that you have built at least one single-view app, and can use Xcode to modify swift files and storyboard scenes. You should know what a View Controller is, and know how to create outlets and actions. You should also have basic familiarity of the Swift programming language.
The course also assumes basic familiarity with Git. Specifically, you will need to be able to clone git repositories and checkout branches specific to each lesson.
You will need access to a Mac computer running OS X 10.10 or later. However, you do not need an iPad or iPhone to complete the activities. All exercises can be completed using the iOS simulator built into Xcode.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Fundamentals of Flux (Coursera) Coursera
Board Infinity

Fundamentals of Flux (Coursera)

Welcome to the "Fundamentals of Flux" course, where you will embark on a journey to become proficient in Flux, a robust architecture for building web applications. Over the course of two comprehensive modules, you will acquire the skills and knowledge necessary to create scalable, maintainable, and efficient web applications using Flux.

Aug 31st 2026
2 Weeks
iOS Design Patterns (Udacity) Udacity
Udacity

iOS Design Patterns (Udacity)

Common Problems, Common Solutions. In this course, you'll explore popular iOS design patterns — the practical and battle-tested solutions to common problems that are used everyday by professional developers. You'll take a look at architectures and mechanisms that are used for constructing large, complex apps. And, by the end of this course, you'll have accumulated a reliable toolset of patterns that you can apply to your own projects.

Self Paced
Self-Paced
Objective-C for Swift Developers (Udacity) Udacity
Udacity

Objective-C for Swift Developers (Udacity)

This course is designed to teach students how to understand and identify the differences between the Objective-C and Swift programming languages, and especially, how to rewrite from the former to the latter. Understanding communications between the two languages—called "interoperability"—is becoming more and more important for developers, particularly as we prepare for the arrival of Swift 3.0.

Self Paced
Self-Paced
Web Application Technologies and Django (Coursera) Coursera
University of Michigan

Web Application Technologies and Django (Coursera)

In this course, you'll explore the basic structure of a web application, and how a web browser interacts with a web server. You'll be introduced to the Hypertext Transfer Protocol (HTTP) request/response cycle, including GET/POST/Redirect. You'll also gain an introductory understanding of Hypertext Markup Language (HTML), as well as the overall structure of a Django application.

Aug 24th 2026
5-12 Weeks
Desenvolvimento Ágil com Java Avançado (Coursera) Coursera
Instituto Tecnológico de Aeronáutica

Desenvolvimento Ágil com Java Avançado (Coursera)

Neste curso, assumimos que você já sabe projetar e desenvolver programas mais complexos em Java, graças às boas práticas e princípios orientados a objetos e TDD exercitados nos cursos anteriores; mas você talvez não se sinta ainda confortável em projetar programas para Web e com dados armazenados em banco de dados, bem como em aplicar conceitos mais avançados de Java. O objetivo deste curso é enriquecer sua experiência com conceitos avançados de Java, programação de aplicações Web e acesso a banco de dados no contexto de modelagem ágil.

Aug 24th 2026
4 Weeks
Client-Server Communication (Udacity) Udacity
Udacity,Google

Client-Server Communication (Udacity)

HTTP/1 to HTTP/2 and all things Security. We use websites all the time, but how does clicking a link in your browser or typing in a URL in the address bar get you to a website? How does the server know what information you're looking for or how to send you that information once it's figured that out? How can you protect your users from attackers? Dig into this course and you'll be able to answer these questions!

Self Paced
Self-Paced
Firebase Analytics: iOS (Udacity) Udacity
Udacity,Google

Firebase Analytics: iOS (Udacity)

Improve your apps with better user data. In this course, you’ll learn how to grow an app's user base using Firebase Analytics, a free and unlimited analytics solution. You'll be able to learn who your users are and how they interact with your app. You can then use this information to make informed decisions to improve your app, such as how difficult to make a level in a game, where to place an advertisement, or what products to stock.

Self Paced
Self-Paced
iOS App Development Basics (Coursera) Coursera
University of Toronto

iOS App Development Basics (Coursera)

iOS App Development Basics, the second course in the iOS App Development with Swift specialization, expands your programming skills and applies them to authentic app development projects. The topics covered in this course include Xcode basics, Core iOS and Cocoa Touch frameworks, simple user interface creation, MVC Architecture and much more. With a focus on using Apple’s components to access sensors like camera, microphone and GPS, by the end of this course you will be able to create a basic App according to specified parameters and guidelines.

Aug 24th 2026
5-12 Weeks
Intro to Progressive Web Apps (Udacity) Udacity
Udacity,Google

Intro to Progressive Web Apps (Udacity)

In this course you’ll get started working on your very first Progressive Web App (PWA) - a web app that can take advantage of many of the features native applications have enjoyed. You’ll also get more experience in creating a web app that works offline using Service Workers. Finally, you’ll make your app installable to the user’s home screen with the Web App Manifest file.

Self Paced
Self-Paced
Games, Sensors and Media (Coursera) Coursera
University of California, Irvine

Games, Sensors and Media (Coursera)

You will learn to make fluid digital interactive experiences that are suitable for gaming and use the advanced sensor hardware built into the iPhone and iPad. This includes drawing 2D graphics, playing sounds and music, integrating with Game Center, the iOS physics engine and detecting device orientation and location.

Aug 31st 2026
4 Weeks