Design+Code logo

Quick links

Suggested search

Please download the resources from the download link. This will be vital for completing this course. In this folder you should find a Figma file which is where we will be getting our designs from, some Swift files that help with our code, and the assets (images and colors) that we will use in the development of our sample app.

About this Course

This course is meant to introduce you to the UIKit framework and how you can still build amazing, powerful applications that are not SwiftUI-based with this framework. I'll introduce you to some basics of Swift and how you can use Xcode's proprietary storyboards to quickly set up and visualize your app's flow. We'll then delve further into Swift code to see how we can customize basic view layouts of the app. In this course, we'll build a sample application that relies on some of the designs of the Design+Code app. We'll take a look at how we can customize basic views like buttons and blur views to match our design. I'll introduce you to the two main ways to display data: Table Views and Collection Views. We'll also see how we can visually enhance our app by working with Dark Mode, SF Symbols, and Blur Views. Finally, we'll take a look at how we can use Auto Layout to make our app adapt for all screen sizes as well as making our app accessible so users with visual difficulties can still use our app.

UIKit for iOS 15 image 2

Requirements

This course expects you to have some prior programming knowledge. Therefore, please make sure you have taken some of the previous courses before continuing. In this course, I am running macOS Monterey, Xcode 13.1, and will be testing on iOS 15.

READ NEXT

Introduction to Storyboards and the Interface Builder

Templates and source code

Download source files

Download the videos and assets to refer and learn offline without interuption.

check

Design template

check

Source code for all sections

check

Video files, ePub and subtitles

Assets

Videos

Subtitles

1

UIKit for iOS 15

Design and code a UIKit app for iOS 15 with storyboards, custom layouts, scroll detection, and accessibility using Xcode 13

6:35

2

Introduction to Storyboards and the Interface Builder

Learn about the fundamentals of Xcode's Interface Builder and Storyboards

12:49

3

Building the Card View

Explore Different Objects in the Interface Builder and Build Your First View

12:32

4

Introduction to Swift and Swift Playgrounds

Learn the basics of programming in Swift

12:34

5

Connecting Storyboards to Code

Create IBOutlets to bridge the gap between the Interface Builder and Swift code

13:28

6

Auto Layout and Dark Mode

Go beyond the basics of Auto Layout as we Adapt our App into More Configurations

9:07

7

Introduction to Collection Views

Learn about one of the most popular ways to display dynamic data in UIKit through Collection Views

13:26

8

Designing our Collection View Cells

Write Swift code to dynamically change the number of cells in our Handbooks Collection View

12:47

9

Classes in Swift

Learn about Swift classes and create your own to display different data in each collection view cell

11:49

10

Introduction to Table View

Use storyboards to create a table view to display the many Design+Code courses

11:43

11

Designing our Table View Cells

Learn about the delegate and data source methods that power a UITableView

13:11

12

Segues in UIKit

Perform transitions between two view controllers and pass data through segues

13:14

13

Scroll Detection

Mathematically compute scroll behavior to change the UI of our application

8:31

14

Building the Detail View

Breeze through this fast-paced recap of everything we've learned so far as we build our Courses View Controller

13:16

15

Interface Builder Actions

Create IBActions to bridge functionality between the storyboards and code

20:54

16

Introduction to UIMenu and UIButton

Create the standard iOS menu with UIMenu

15:55

17

Animating the Tab Bar

Explore the UITabBarController and all its customizable attributes

11:08

18

Building the Explore Screen

Discover new ways to build immersive views with UIKit

17:55

19

Advanced Auto Layout and SF Symbols

Take advantage of Apple’s powerful SF Symbols in new and delightful ways

21:05

20

Making our App Accessible

Increase the Accessibility of our App by enabling Dynamic Type

16:06

Meet the instructor

We all try to be consistent with our way of teaching step-by-step, providing source files and prioritizing design in our courses.

Sai Kambampati

Student. Engineer. Designer. Not always in that order.

Student at UCSC constantly learning about new technologies, building innovative mobile apps, and designing breakthrough products.

icon

6 courses - 24 hours

course logo

Jetpack Compose for Designers

Learn the fundamentals of Jetpack Compose to build a beautiful Android application using Kotlin and Android Studio

4 hrs

course logo

UIKit for iOS 15 Part 2

Learn advanced techniques about animations, layout, localization, Firebase, Xcode Cloud, and more!

3 hrs

course logo

UIKit for iOS 15

Design and code a UIKit app for iOS 15 with storyboards, custom layouts, scroll detection, and accessibility using Xcode 13

5 hrs

course logo

Advanced Development in SwiftUI

Advance your SwiftUI skills by developing an app using Core Data, CloudKit, In App Purchases, Sign In With Apple, and Firebase Authentication

4 hrs

course logo

Flutter for Designers Part 2

Continuing on from the previous Flutter for Designers course, this course has a heavier emphasis on using Firebase API's to combine Firebase and Flutter. There will be a lesser emphasis on creating front-end Flutter UI and more emphasis on how to build functional applications capable of being shipped to the App Store. A review of the previous course and the Dart programming language will be very helpful. That being said, you will also be introduced to some new Flutter widgets and packages.

4 hrs

course logo

Flutter for Designers

Flutter is a relatively new toolkit that makes it easy to build cross-platform apps that look gorgeous and is easy to use. By utilizing a platform's native components we'll build an app that can run on both iOS and Android that will look and feel like it was developed natively. Furthermore we'll see how with one single codebase, Flutter provides us with native performance, hot reload for fast development, and access to beautiful, native components.

4 hrs