This is part of the "iOS User Interfaces with UIKit" learning path. View Path

Table Views

Sep 1 2020 · Video Course (1 hr, 50 mins) · Beginner

Learn all about table views: one of the most common tools in iOS development. Display and manipulate data in customizable table views while practicing fundamental concepts used across iOS & UIKit.


  • Swift 5, iOS 14, Xcode 12

Table View Fundamentals


1:17 Free

In this introductory episode, find out a bit about table views, and what you can learn in this course.


Learn to set up your first table view controller and table view cell in this episode, all from a storyboard.


Find out what a UITableViewDataSource is, and why it is so important to your table view implementation.


Learn about how table views work behind the scenes as you scroll through them, and what dequeueing has to do with it.


There are many ways to navigate in an iOS app. See how to navigate from a table view, and pass data along.


When the data supporting your table view changes, how do you ensure the table view updates to reflect that change? By reloading the data.




Review what you learned in this part of the course about table view fundamentals, and see what's coming up next.


Customizing Table Views

In this part of the course, you will focus on customizing the user interface of your table view with custom cells, headers, and static cells.


The four default cells aren't your only option! You can make custom table view cells right from the storyboard.


In this hands on challenge, test your auto layout and table view skills by building another custom cell and connecting it to your code.


Static Table Views are fantastic options for settings screens and forms in the world of iOS. Learn how to set one up in this episode.


In this next challenge, design one more static table view in your storyboard. Stick around to learn more about text fields!


There are a lot of options for displaying multiple sections in a table view when it comes to table view headers. Try a few out in this episode!




Review what you learned in this part of the course about customizing table view UI, and see what's coming up next.


Managing Rows

Find out what the difference is between your two data source options for table views in this introduction.


Learn how to refactor your existing table view to use a diffable data source, without breaking your app!


In this episode, you'll see the diffable data source at work when you add and remove rows from your table view.


Move Rows


Moving rows around is also possible within a table view! Learn how in this challenging episode.




In this conclusion episode, review everything you accomplished in this course, and find out what you might learn next!


Next course in this Learning Path

Version history

iOS 14, Swift 5, Xcode 12 (Selected)

Sep 1 2020

iOS 12, Swift 4, Xcode 10

Aug 28 2018

iOS 11, Swift 4, Xcode 9

Oct 3 2017

iOS 10, Swift 3, Xcode 8

Feb 28 2017

iOS 9, Swift 2, Xcode 7

Sep 16 2015

Who is this for?

Beginner iOS developers with some UIKit experience. You should be comfortable with Auto Layout and intermediate Swift concepts. We recommend you follow along with learning path courses in order.

Covered concepts

  • Delegates & Data Sources
  • Diffable Data Sources
  • Hashable & Equatable
  • Cell Dequeuing
  • Cell Selection
  • Custom Prototype Cells
  • Static Cells
  • Headers & Footers
  • Adding/Deleting/Moving Rows