In this course, we will explore how to build an iOS memory puzzle game using XCode and Objective-C. While this is a beginner course, by going through it you will learn an array of topics such as
This course could be used by both beginner developers or experienced coders. For a programmer, this should take no longer than an hour to develop, so I’d give it 3 hours to complete this tutorial if you are a beginner.
I have included my assets as well as my own project so you can easily and efficiently follow my steps in each lesson.
By the end of this, you should be ale to use the interface builder of Xcode to build your iOS interfaces. You should also know how to programmatically make numerous outlets and be able to use few different game logic and of course you would learn how to use the touch events and manage user interaction.
Throughout the course, if you had any questions or concerns, please feel free to get in touch with me. If I am online I will get back to you immediately, if I am away, I usually reply in less than 12 hours.
In this lesson, we will discuss the goals of this project as well as the stages of this development. We will also have an overview of the entire project.
In this lesson, I will demonstrate how the app actually functions. This is a very simple introduction as to how this little game is being played and also what you have to know and keep in mind for developing this.
Basic things that are needed to develop this app are:
a) an array to hold all the images
b) a grid system where each image from the array is placed twice and randomly
c) a touch function that detects when you tap on any of the blocks
d) a mechanism that understands whether this is the first time you tapped or the second
e) and a timer system
To develop this game, you need some assets, they are mainly the images you will be using for the actual game. I have supplied these images with my resources, but feel free to replace them with images of yourself or friends.
In this lesson, we will explore how to use interface builder to build the main background view for our game as well as the buttons to reset the game and the game timer.
In this lesson, we’ll add the image assets to our project and load them all into an array.
In this lesson, we will learn how to make one simple image view and attach it to the game background view. It would require exposing some of the properties and outlets and deciding about the size of the image view.
In this lesson we learn how to make sure the view is laid out properly.
In this lesson, we will make a very simple code that makes all of the images of the grid. It needs a little maths and a little coding.
In this lesson, we will write a randomize action that places the blocks randomly at different locations.
In this lesson, we’ll have a quick review of different touch events and how we could utilize them to understand when one of our blocks is being tapped on.
In this lesson, we’ll add some animation to the way the blocks appear and disappear.
In this lesson, we will do a quick comparison of the image views we have tapped on.
In this lesson, we will learn how to compare and make the similar image views disappear and make the different ones go back to No Image mode.
In this lesson, we add a click permission Boolean value to control when user can click on the image views.
In this lesson, we’ll do quick review of everything that we have covered so far. We have gone through so much code and we still have a bit to cover. It certainly helps to get a better understanding of what has been done so far.
In this lessons, we will explore some of the functions to change the way the animations run. It will include changing some of the codes we have written so far. We will also force the game to do a re-start once the player finishes matching all the blocks.
I am currently Senior Instructor at Cinard. Before taking up this job and moving to beautiful Vancouver, for over a decade I was senior lecturer of apps / games programming in various colleges and universities.
I work primarily in native iOS and Android apps and Video games in Unity3D.
Cinard is a Digital Media Art & Technology Institute.