iOS Programming Tutorials

1 Review

Teachers: 99 Cents

About: 8 hours, 36 lessons, Certificate of Completion

Learn how to develop iOS apps from scratch. You'll learn everything from UILabels to passing data between Views. 

By the end of this course you will know how to create a custom web browser, hide sections of your app, create a calculator, take pictures with the camera, how to generate random numbers and text, and much more. 

Read More

More Details

Course Description

Learn how to develop iOS apps from scratch. You'll learn everything from UILabels to passing data between Views. 

By the end of this course you will know how to create a custom web browser, hide sections of your app, create a calculator, take pictures with the camera, how to generate random numbers and text, and much more. 

For a complete list of what you'll learn in this course, see the course curriculum. 

License: CC BY


Module 1: Introduction

Lesson 1: Introduction To Programming iOS Apps
Welcome, to your first iOS programming tutorial. In this tutorial we get familiar with Apple's programming interface, Xcode, and learn the basics of creating an iOS application. We build a basic app, which we will use in the next tutorial when we create our first iPhone application!
Lesson 2: UILabels and Creating A Hello World App
In this tutorial we look at creating an app where a user enters their name, then the app outputs in a UILabel Hi, your name. We use IBActions and Outlets, UITextFields, and look at getting the text of the text field, and changing the text of the label, programmatically!
Lesson 3: Switching Views with Storyboards
In this tutorial we look at switching views (otherwise known as 'activities') in Xcode, using storyboards, both with segues and presentingModalViewController, as well as creating a back button to dismiss the view when clicked. We also look at programmatically triggering the segue!
Lesson 4: Hiding and Disabling Buttons & Objects with IBOutlets
In this tutorial we look at changing the properties of IBOutlets, in this cases, hiding and showing, as well as enabling and disabling buttons and other objects, and then resetting them back to their original state. Get in touch with us or message us if you have any questions or ideas!
Lesson 5: Segmented Controls
In this tutorial we look at segmented controls, how to customise them, detect when a segment is changed, and discover which segment has been selected. In part two and three we will look at other UIObjects!
Lesson 6: UISwitch
In this tutorial we look at switches, how to customize them, trigger an action when their value (on or off) is changed, and detect their current state to change a label!
Lesson 7: Sliders (UISlider)
In this tutorial we look at customizing a UISlider, how to use and when to use a UISlider, as well as getting the value from the slider. We will also see how we can, once we have the value of the slider, round it to a whole number and display the value in a label!
Lesson 8: Building a web browser (UIWebView)
In this tutorial we begin to build a web browser! We will use a UIWebView to display a web page, that we will set, in our app, by converting a string to url, and then presenting the url in the WebView.
Lesson 9: Creating a basic web browser (adding an address bar)
In this tutorial we continue building an iOS web browser using Xcode. We add in an address, or URL bar, which is just a text field and "go" button, so the user can enter the URL of the website they want to visit. Then, we refine the app by making the keyboard hide, using resignFirstResponder, when the user presses search.

In Part 3, we will add back and forward buttons for navigation!
Lesson 10: Creating a basic web browser (adding back and forward navigation buttons)
In this tutorial we come close to finishing our web browser application, adding in a back button, and forward button for navigation of web pages, like a real web browser would have, using [goBack] and [goForward]. We also do a test when the user attempts to go backwards or forwards, to see if they can, and if they cannot, they will get an alert saying that the web browser cannot go back/forwards!

In the final part (part 4) of this tutorial, we will make the app look better, including basic customization of the tool bar!
Lesson 11: Creating a basic web browser (making it look good!)
In the final part of our 'Creating a basic web browser' series, we customize the text field, and toolbars (using basic UIObject customization, all from the storyboard), to make the app look finished and professional!

In a few weeks, after we continue to progress through this iOS Programming Tutorial series, we will review the web browser and make additions to it, like the ability to share pages, or save items in history!
Lesson 12: Displaying alerts/pop-ups with UIAlertView
In this tutorial we look at showing an alert, otherwise known as a 'popup', to the user. We will look at changing the text, including title, message, and button text; as well as adding multiple buttons!

UIAlertViews are really useful for conveying information to users, as well as error messages, and you will find them used a lot in apps.
Lesson 13: In-App Email, Sending an email (MFMailComposeViewController)
In this tutorial we look at programmatically sending an email from within your application, otherwise known as in-app email. You will see how to add and set recipients, CCs, BCCs, the message Subject, and the Message, then display the MFMailComposeViewController, and sending the email!
Lesson 14: Adding iOS 7 Theme to iOS 6 App!
In this special iOS Programming Tutorial, we look at how to make an iOS 6 app look like an iOS 7 app. This is a great skill to have, as it is important for your app to retain iOS 6 support, but look like iOS 7. We will look at customizing many of the provided UI elements, like buttons and text fields and toolbars, with little to no code required.
Lesson 15: Random Number Generator
In this tutorial we look at how to generate a random number in iOS using: arc4random(). We'll then display the resulting random number in a label. In iOS Programming 10 we take what we learn here, and use it to generate random text!
Lesson 16: Random Text Generator
In this tutorial we look at generating random text. We create a list (NSArray) of the various possible text, then generate a random number and pick that item in the list to display in a label.
Lesson 17: Generating/Triggering Random Actions
In this tutorial we look at how you can run a random action. We generate a random number, and then will find and run the corresponding action. In this example I show you how to randomly hide some buttons, but show others, as well as how you could add code to show a random website, or random alert, or change the color of text or a button to a random one. This enables you to generate anything randomly!
Lesson 18: Share to Facebook, Twitter, Mail and More with UIActivityView (Share sheet)
In this tutorial we look at a great way to share content (text, images, URLs) to all your favourite social networks, built into iOS. We will share content to Facebook, Twitter, Sina Weibo and more, using a simple UIActivityViewController, otherwise known as a 'share sheet'. This is an easy way to share content, and can be seen when you press the 'share' button, in apps like Safari and Photo Gallery!
Lesson 19: NSLog, Breakpoints, Errors & Warnings, Build History and More!
In this tutorial we look at the best ways to debug your project. We will look at all the best ways to find where there are bugs in your project, and how to fix them using:
-Gain a deeper understanding of warnings and errors, and what they mean
-Using the console and variable explorers
-Build and debug history
...and more

We will discuss the most common bugs (i.e SIGBART), and I'll show you the best ways to fix them, using the methods discussed above!
Lesson 20: Playing and Pausing Audio with AVFoundation (AVAudioPlayer)
In this tutorial we look at playing audio in your application using AVAudioPlayer and AVFoundation. This is great for music and songs, as well as sound effects. We will also look at how to pause and stop the audio. Next video, we will look at adjusting the volume, displaying the current track time, and playing audio in the background!
Lesson 21: Xcode 5 & iOS 7 Introduction
In this iOS Programming Special, we take a first look at the newly released Xcode 5, the iOS 7 simulator, and the iOS 7 SDK. We'll briefly look at
-Sprite Kit
-The new Xcode UI
-Debugging Gauges
-iOS 7 objects and new controls
-Adding background support
-Using the new simulators
-iOS 6 previews
...and more
Lesson 22: Creating an iOS 7 Style Parallax Effect on Images with Accelerometer
In this tutorial we look at how to replicate the parallax effect which can be seen in iOS 7. It's that effect that you see when using iOS 7 on the home screen and lock screen, where the background image is responsive, and responds to the movement of your device to create a '3D' appearance. We will do the same thing, by getting data from the device's accelerometer, and then changing corresponding x and y coordinates of an image.
Lesson 23: Hide and Toggle Status Bar Visibility in iOS 7
In this tutorial we look at hiding, and then showing, the iOS status bar. Hiding the status bar involves no code, and toggling it's visibility (from hidden to visible, and back again) can be done in under 5 lines of code. You have probably recently upgraded an iOS 6 app to run on iOS 7, but you have probably noticed, if your app was a full screen app, that it no longer is, and the dreaded status bar has returned! So how do you hide the status bar, or show it, in both iOS 6 and iOS 7? iOS 7 and Xcode 5 have a new way of handling status bar visibility, and it also works in iOS 6, which we will cover in this video.
Lesson 24: Hiding/Dismissing Keyboard When Return Key is Pressed
In this tutorial we look at how to close/hide/dismiss a keyboard from a text view or text field programmatically. We then combine this with detecting when the 'return' or 'done' key is pressed on the keyboard, so as to dismiss the keyboard when the return key is pressed. We also look at changing the text of the return button on the iOS keyboard from within the storyboard/XIB
Lesson 25: Opening a URL (Website) in Safari
In this tutorial we look at how, with the press of a button, your app can take the user to Safari and open a set URL. It can be done in a line of code, and is very simple. At the end of the tutorial, I'll also show you how to add a text field, so the user can enter a URL, click a button, and the URL which they entered will open in Safari.
Lesson 26: Saving and Loading Data with NSUserDefaults
In this tutorial we look at how to save and then load data using NSUserDefaults, and keys. In this example we will have a text field, and when the user closes our application, the data (in this case the text in the text field) is saved, and when they return to the app, all data has been stored, retained, and restored. We will also go through saving numbers (ints and floats) as well as other objects, (array, dictionaries) and lots more.
Lesson 27: Multiple Button Alerts (UIAlertView) & Detecting Button Press
In this tutorial we look at creating a UIAlertView (pop-up) with multiple buttons. We will then detect when a button is pressed, and detect which button was pressed. In this way, we'll be able to run actions (such as opening web pages) which vary depending which button on the alert was pressed.
Lesson 28: Timer & Stopwatch with NSTimer
In this tutorial we look at how to create a stopwatch, and then a countdown timer in an iOS application (Xcode) using NSTimer (scheduledTimerWithInterval). We will also stop the timer from running twice when the start button is pushed multiple times (to prevent the timer from speeding up, a bug which you may otherwise come across), and stop the countdown timer at 0, by detecting when it is at zero, and then using [timer invalidate];.
Lesson 29: Sending Local Push Notifications
In this tutorial we look at sending local push notifications. We will make it appear as a banner on the home screen, and appear on the lock screen, as well as in notification centre. We will additionally be looking at changing the alert sound, app icon badge, notification text, and notification action. Finally, the app will allow us to set a date, or time period after our application is closed, to send a push notification to the user.
Lesson 30: Capture Images With UIImagePickerController
In this tutorial we look at capturing images and photos from the user's photo gallery, as well as device camera. Additionally, we will learn how to customise the controls to suit your app, and finally we will display the selected image on the screen (inside a UIImageView).
Lesson 31: Programmatically Create Label (UILabel)
In this tutorial we look at how you can programmatically create a label, essentially how to add a label to your view in code, rather than through an .xib or storyboard. This holds a number of advantages, discussed further in the tutorial.
Lesson 32: Creating a Calculator
In this tutorial we look at how to make a calculator app, using basic mathematical operations in objective-c. The calculator will be able to add, subtract, multiply, and divide numbers.
Lesson 33: Pass Data Between Views
In this tutorial we look at how to pass data between views in Xcode (iOS). We will create a segue between two views. On the first view there will be a text field, where the user enters text, and when they enter the second view, the text from the first view is displayed in a label. We do this through properties.
Lesson 34: Populating Table View with Data
In this tutorial we look at creating and setting up a table view (UITableView), and populating its cells with data to create a 'list' display. We will also look at a custom table view cell, to display additional relevant information in a single cell.
Lesson 35: Detail View Controller
In this tutorial we look at creating a detail view controller for our table view, and pushing it onto the view heirachy when a cell is tapped, using a navigation controller. In it, we will display additional relevant information to the the cell that was tapped on, including images.
Lesson 36: Custom Camera View & Taking Photos
In this tutorial we look at how to create a custom camera view using AVCaptureSession. This will allow us to display a live camera preview in our view controller, and then take a photo/video with your device's camera and display it in realtime in a UIImageView.

Reviews (1 Review)

Ari Haverinen January 29th, 2017

What You'll Learn

  1. You'll know how to build iOS applications


  1. An Apple computer
  2. Internet to download XCode and iTunes

Your Teacher

Ever wanted to develop your very own app? 99Cents is a market leader in innovative app development