iOS Development - Create 4 Quiz Apps with Swift 3 & iOS 10

In this course we will develop 4 different quiz apps together and go into great detail for every step on our way
4.3 (19 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
1,143 students enrolled
Take This Course
  • Lectures 31
  • Length 5 hours
  • Skill Level Intermediate Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


Learn and practice real-world skills and achieve your goals.

About This Course

Published 11/2016 English

Course Description

A lot of very successful and popular games in the appstore are Quiz Games. They are addicting, relatively easy to make, even for beginners and you can make a quiz about almost anything.

In this course we’ll have a look at 4 different quiz gaming modes and learn how to implement them properly from scratch.

We will write all of the code together and I will explain everything along the way. We want to teach you how to build these quiz games and not just give you a template that you can reskin but have no idea of the functionality behind it.

We're going to start with a classic Multiple Choice Quiz, meaning a quiz where we ask a question and offer 4 different answers that the user can select.

We'll add a bunch of neat little features such as animations for right and wrong answers as well as an animated countdown timer.

The next quiz will be an Image Reveal Quiz quiz where we reveal an image step by step and the user has to guess as quickly as possible what's on that image. This will teach us how to display an image view step by step and we'll further develop what we learned earlier, by offering multiple answers.

We're then going to learn how to implement a different quiz mode next. One where the users cannot just select an answer but has to type one in themselves. This will also teach us how to handle custom user input. Therefore we're going to create an Emoji Riddle Game where we display something such as a movie title with emojis and the user has to guess what it is.

Finally we're going to create a simple but addicting Right or Wrong Quiz where we have statements displayed that are either correct or incorrect and the user has to decide.

We're going to be able to use a lot of our newfound knowledge to build this game.

With all quizzes we're going to teach you how to save your high score and how to display it animated in the menu screen

We'll also learn how to implement sound into the app, meaning background music as well as specific sounds for a right or wrong answer.

While developing these apps we make sure to use sophisticated programming syntax, which will allow us to later on update our quizzes with monetization or ads if we like.

In more technical terms, in this course you will learn :

  • How to create 4 different Quiz Games
  • How to do auto layout in code
  • How to do animations by animating a countdown timer
  • How to save data in User Defaults (such as our scores)
  • How to handle User Input via keyboard
  • How to create resource property lists
  • How to create a custom AlertView that will fit the style of our application
  • How to implement sound into the app (background music, button sounds)

As it is the case with all of our courses, we will provide you with the project files with the entire source code after every lesson. It will be available to download along with all of the resources, such as images and sounds that we use.

I look forward to seeing you in this course and teaching you all there is to know about quiz games.

What are the requirements?

  • PC running MacOS and Xcode 8
  • Prior experience with programming will be helpful with understanding everything

What am I going to get from this course?

  • Create 4 different quiz game variations
  • Master functionality and layout for quiz apps
  • Create plist resources for quizzes
  • Implement audio into applications

Who is the target audience?

  • iOS Developers wanting to create Quiz Apps
  • Advanced beginners in iOS programming

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.


Section 1: Welcome to the course!

Download the resources for our course here

Section 2: Setup & Menu

We create our Xcode project and change some general settings before we start


We start creating our menu ViewController and think about the way we are going to lay things out


We add the autolayout anchors for our menu screen


We add animated scores to our menu screen as well as our logo at the top of the ViewController


We create the method for our game buttons and our first new ViewController which will contain our multiple choice quiz

Section 3: Multiple Choice Quiz

We will think about the layout for our multiple choice quiz and add the corresponding properties to our class


We add our view, buttons and labels to our content view


We add all the autolayout anchors for our view


PDF for better understanding of our autolayout constraints


We create the plist file which contains the questions for our multiple choice quiz


We create a new class called Quizloader which will help us easily load the questions when we need them


We use an instance of our Quizloader class to load and display questions in our multiple choice quiz


We create our countdown timer with the animated UIProgressView and create an alert


We create a new class for a custom alert view and directly implement it into our quiz


We implement the remaining functionality for our quiz with the button handlers for question and answer buttons as well as saving our scores accordingly

Section 4: Template View Controller

We create a generic Quiz View Controller Template which we will use as the basis for our upcoming three quiz variations

Section 5: Image Quiz

We add the questions and resources for our image quiz to the project


We change our template in a way that it creates our image quiz view


We start to implement our partially revealing mechanism by creating views that cover our image initially


PDF for better understanding of our autolayout constraints


We do now partially reveal our image by using the views and also implement a new extension for the array which will allow us to randomize the process

Section 6: Emoji Riddle

We add our questions and extend the QuizLoader class to handle another type of questions without an answers array


We change our template in order to be right for the emoji riddle


We add the functionality for our text input and the UITextFieldDelegate in our class


We change the frame of our textfield to always have our text nice and visible on the screen

Section 7: Right or Wrong Quiz

We once more customize our template to fit the needs of our new quiz


We finish our fourth and final quiz

Section 8: Extras

We implement background music as well as sounds for our buttons in the app


We create another mode of playing where the user just starts over after answering all questions. We also take a look at how we can use the shuffle method of Array for our questions

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Johannes Ruof, RUME Academy

I study Applied Computer Science and teach at the university and here on udemy. I have been developing iOS applications for over 3 years and have 5 years of experience in Objective C Programming. Since Apple announced Swift I have been using it in my programming and can proudly say I have experience since Day 1 of the language.

I am looking forward to sharing my knowledge with my students and hopefully have a positive impact on the lifes of as many people as possible as much as learning new things myself.

"You are never too old to set another goal or to dream a new dream." - C. S. Lewis

Instructor Biography

Timothy Meixner, RUME Academy

I'm currently studying economics and work as a teacher on Udemy. I have worked in digital publishing and viral marketing for more than three years.

I am also a web and mobile application developer with almost four years of working experience. But my greatest passion is designing and developing mobile games for iOs devices, in either Objective C or Swift.

My teaching philosophy is best described in the words of Benjamin Franklin:

"Tell me and I forget. Teach me and I remember. Involve me and I learn."

I hope that we can create many beautiful things together and learn from each other.

Ready to start learning?
Take This Course