UIKit Fundamentals

Learn the iOS User Interface Library


大约 2 个月

6小时每周 (自主学习)




大约 2 个月

6小时每周 (自主学习)



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.

喜欢这门课程?加入“iOS 开发者”纳米学位,点此免费体验


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.


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.







Lesson 1: Outlets and Actions

In this lesson, you’ll learn to connect outlets and actions using only code and graphically using storyboard.

You’ll use the following UIKit classes in this lesson:

  • UIButton
  • UILabel
  • UISwitch

Lesson 2: View Presentations and Segues

In this lesson, you’ll learn how to present views modally.

We will introduce you to the following UIKit classes:

  • UIImagePickerController
  • UIAlertController
  • UIActivityViewController

Lesson 3: The Delegate Pattern

Many of the most common UIKit components make use of the delegate pattern. In this lesson, you’ll learn how delegates make important connections between the model, view, and controller.

We will introduce you to the following UIKit classes:

  • UITextField
  • UITextFieldDelegate

Lesson 4: Tables

Table views are one of the most commonly used views in iOS apps. In this lesson, you’ll learn how to implement tables in your own apps.

We will introduce you to the following UIKit classes:

  • UITableView
  • UITableViewDelegate
  • UITableViewDataSource
  • UITableViewCell

Lesson 5: Navigation

In this lesson, you’ll learn how iOS uses navigation stacks to manage multiple views in an app. You’ll take UITableViews a step further and create the navigation structure that enables a user to tap a row of a table, view the details of an item, and return again.

We will introduce you to the following UIKit classes:

  • UINavigationController
  • UIBarButtonItem

Lesson 6: MemeMe Techniques

This lesson will guide you through the process of creating your own version of the meme generating app, MemeMe. You’ll learn about collection views, tab bar controllers, how to adjust the screen to accommodate the keyboard, and how to access the camera.

We will introduce you to the following UIKit classes:

  • UICollectionView
  • UICollectionViewDelegate
  • UICollectionViewDatasource
  • UITabBarController

We will also feature classes from the Foundation framework:

  • NSNotification
  • NSNotificationCenter


Gabrielle Miller-Messner

Gabrielle Miller-Messner

Gabrielle 获得了加利福尼亚大学戴维斯分校的群体生物学哲学博士学位。她在学校的实验室分析 DNA 序列时发现了编程的乐趣。她曾向本科生和高中生教授科学和数学长达四年。在加入优达学城前,她已有一年半的 iOS 工程师工作经验。