Introduction to XCode for iOS
Tags: appdevelopment, tutorial, guidesandtutorials, ios
Published: 2019-06-08 01:36:37

---
title: Introduction to XCode for iOS
published: true
tags: app-development,tutorial,guides-and-tutorials,ios
canonical_url: https://medium.com/@robertchen234/build-your-very-first-ios-app-3573b66ffa99
---

### A step by step tutorial

![](https://cdn-images-1.medium.com/max/1024/0*NWfbAtNEvu_8UEH3)<figcaption>Photo by <a href="https://unsplash.com/photos/n31x0hhnzOs?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Yura Fresh</a> on <a href="https://unsplash.com/search/photos/ios?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></figcaption>

Always wanted to build an app? Didn’t know how? Me neither, until I took some online courses and found that it’s not that hard (to build a simple app). You can too, follow this guide and get familiarized with XCode.

![](https://cdn-images-1.medium.com/max/372/0*I2pq9MZHbb9T51Xb)

I’m currently a Flatiron School student in their Immersive Web Dev Program and learning Swift on Sundays with App Brewery through Udemy so I know very well that learning how to develop can be intimidating. In this post, there won’t be any coding. We’ll focus on getting you set up and familiar with the numerous XCode panels.

### **Let’s get you situated!**

1. Install the latest version of XCode [here](https://itunes.apple.com/us/app/xcode/id497799835?mt=12)[.](https://itunes.apple.com/us/app/xcode/id497799835?mt=12.)
2. You will need at least the second to latest version of macOS to use the latest version of XCode. Update your Mac [here](https://www.apple.com/macos/how-to-upgrade/) if necessary.

### **To avoid confusion**

The following steps are demonstrated with XCode 10 running on macOS Mojave. Depending on how far into the future you are, the interface may or may not look exactly the same.

![](https://media.giphy.com/media/RrVzUOXldFe8M/giphy.gif)

### **Rules**

- Anything circled in green means click.

- Two green circles means double click.

- Green arrow means click and drag.

- Anything circled in yellow means take a look.

- Description text always refers to the image above.

### **Create new project**

![](https://cdn-images-1.medium.com/max/1024/0*1MAu9_jKVnTaHvcE)

![](https://cdn-images-1.medium.com/max/731/0*daz2umoRDynag73F)

![](https://cdn-images-1.medium.com/max/733/0*fqpl0oljAfOH3PQI)

For ‘Organization Name’ you could just put your name.

For ‘Organization Identifier’ Apple wants a reverse domain identifier. That’s having ‘com.’ in the front instead of at the end like how we’re used to seeing it.

You want to choose Swift because C++ is getting phased out for iOS development.

We’re not doing any tests for the purposes of this app so uncheck all the boxes.

![](https://cdn-images-1.medium.com/max/799/0*1VLhYR7x5ANUuywz)

### **Pause. Let’s take a look at some stuff.**

![](https://cdn-images-1.medium.com/max/1024/0*TbSLBpwV_xSS37-Z)

The files that end with ‘.swift’ are your code files.

The files that end with ‘.storyboard’ are your design files.

The ‘Assets.xcassets’ folder contains all your media files.

![](https://cdn-images-1.medium.com/max/1024/0*0IxcnY_kYGHC2p8f)

![](https://cdn-images-1.medium.com/max/1024/0*ku57AP5IsubIKj6t)

![](https://cdn-images-1.medium.com/max/1024/0*MgZSdMk-iUvZnyCJ)

You can change the device that’s shown in your preview which directly affects the dimensions of the app that you build. I changed it from iPhone 8 to iPhone XR, but you can choose any device and still be able to follow along just fine.

![](https://cdn-images-1.medium.com/max/1024/0*VojJsTuvIElR-QCN)

Let’s close the view panel because you want to give yourself as much space to work with as possible.

### **We’ll start designing your app now!**

![](https://media.giphy.com/media/QtSBfTT5TI3Go/giphy.gif)

![](https://cdn-images-1.medium.com/max/1024/0*OAfqm2YHq0irv4ok)

![](https://cdn-images-1.medium.com/max/1024/0*cXvccaZZFvkTGPKz)

![](https://cdn-images-1.medium.com/max/1024/0*2VADSWxWx5Y0hEb0)

![](https://cdn-images-1.medium.com/max/1024/0*4ul8lriR8AgJsnaM)

![](https://cdn-images-1.medium.com/max/1024/0*X4unHevz9VXtIDUT)

![](https://cdn-images-1.medium.com/max/1024/0*rPdlWdxFcoz4Po8M)

![](https://cdn-images-1.medium.com/max/1024/0*ObO_G6cKCjsD0b61)

Choose the font that calls to you most.

![](https://cdn-images-1.medium.com/max/1024/0*722-ly-Mfdkbnlla)

![](https://cdn-images-1.medium.com/max/1024/0*zU0INKBgSSy37uSs)

Zoom out a little if you don’t see the whole device.

Recenter your label.

Reopen the view panel.

![](https://cdn-images-1.medium.com/max/1024/0*vbqZlBE2HNl5GLQC)

![](https://cdn-images-1.medium.com/max/1024/0*h4K9eZBxa3RkzJsw)

Choose your background color. I used the color pencil option with Apple’s pre-made color selection, but you can choose any color through any method that you want. Take a minute to click around and play with the color panel.

![](https://media.giphy.com/media/9vJJadIH58iqY/giphy.gif)

### **Let’s add an image**

![](https://cdn-images-1.medium.com/max/1024/0*8ZcepcWJtX3Ykx1c)

![](https://cdn-images-1.medium.com/max/1024/0*H85mrH1MSPIDCGQU)

You will need various sizes of the same image for different devices, but there’s a great website called [appicon.co](https://appicon.co/) that can take care of resizing images for you.

![](https://cdn-images-1.medium.com/max/1024/0*JJnlaoqmBhyA3gxj)

![](https://cdn-images-1.medium.com/max/1024/0*R5-5oM27HboUtxeT)

![](https://cdn-images-1.medium.com/max/1024/0*DIWuEbeGXaf45hRV)

![](https://cdn-images-1.medium.com/max/1024/0*8C-crmMEiCxjtB4e)

![](https://cdn-images-1.medium.com/max/1024/0*hwlHUfvOa2THvebU)

![](https://cdn-images-1.medium.com/max/1024/0*k8ZUDBheToN8HuP8)

![](https://cdn-images-1.medium.com/max/1024/0*ijUIOG0qc1kx5S4I)

![](https://cdn-images-1.medium.com/max/1024/0*6zBBC9WtwVa_1mjv)

Type the image name to locate your image.

In the view panel, drag your image to be above your label so that it layers behind the label.

In the preview screen, drag your image to where your label is.

![](https://cdn-images-1.medium.com/max/1024/0*YHY6LaEExmD2nNMg)

Now that we have a chalkboard behind your text, let’s change the text color to white.

![](https://cdn-images-1.medium.com/max/1024/0*UltHQQu4sLduHEoi)

Sometimes your image will be distorted by default (not in this case), you can change the behavior of your image through the ‘Content Mode’ attribute.

![](https://cdn-images-1.medium.com/max/1024/0*-SybAXn7ea8S8QjX)

When you want very specific positions for your images or labels (provided by a client or design team), you can use the ruler panel to input the desired location.

### **Time out.**

I know you want to go from 0 to 100, but that’s it for this post. Take some time to familiarize yourself with all the panels we went through. It’s a lot of panels to look at and remember but…

![](https://media.giphy.com/media/IqFH0yMll9wl2/giphy.gif)

Congrats on taking your first step in becoming an iOS developer!