Mobile Computing. Overview. What is ios? 8/26/12. CSE 40814/60814 Fall 2012

Size: px
Start display at page:

Download "Mobile Computing. Overview. What is ios? 8/26/12. CSE 40814/60814 Fall 2012"

Transcription

1 Mobile Computing CSE 40814/60814 Fall 2012 Overview ios is the opera8ng system that runs iphones, ipod Touches, ipads, and Apple TVs. The language used to develop sogware for ios is Objec8ve- C (very similar to C; Smalltalk- inspired). Dynamic (run8me dispatching vs. compile- 8me). Purpose of lecture today is to give newcomers a brief introduc8on into ios development to help get you started. 1 What is ios? ios is an OS. It s a subset of Mac OS X. The ios SDK is the so)ware development kit that allows applica8on programs to u8lize classes and frameworks provided by the SDK. ios is mul8tasking and runs on different devices (iphones, ipod Touches, ipads, and Apple TVs). Apple provides an IDE (integrated development environment) called Xcode. Xcode provides an interface to the compiler, editor, debugger, and code profiling tools. 2 1

2 Device Features SQLite for structured data storage Media support for common audio, video, and s8ll image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) GSM Telephony (hardware dependent) Bluetooth, EDGE, 3G, and WiFi (hardware dependent) Camera, GPS, compass, and accelerometer (hardware dependent) Rich development environment including a device simulator, tools for debugging, memory and performance profiling 3 Download the ios SDK Download the latest from the Apple App store (only available for Apple Macs); free. To build to device and submit to the App store, you will be required to becomes a registered Apple ios developer ($99 for basic account). University license allows you to test app on device, but cannot be used to distribute app in App Store. TA Nikhil (nyadav@nd.edu) can help you with any problems with Xcode installa8on. 4 Let s get started - Launch Xcode You are presented with the Welcome Screen: Create a new project Connect to a repository Learn about using Xcode Go to Apple s Portal Go ahead and click on Create a new project 5 2

3 Project Template There are several predefined templates to help you get started on a new project Simple one to start with: Single View Applica:on 6 Project Options The Product Name is the name of your app Company Iden8fier is your organiza8on name such as edu.itu (reverse domain) Class Prefix (leave empty) Device Family: ipad, iphone, Universal (Universal means that a single binary will have screens for iphone, ipod Touch, and ipads) Storyboards Automa8c Reference Coun8ng Include Unit Tests 7 Quick Terminology: ARC Automa8c Reference Coun8ng (ARC). The LLVM 3.0 compiler handles memory management for you. It is not a garbage collector! Prior to ios5 memory management was the single most difficult item to grasp in Objec8ve- C. Unless you have specific reasons, all of your projects should use ARC. 8 3

4 Reference Counting OLD: NSObject *obj = [[NSObject alloc] init]; // do some stuff [obj release]; NEW: NSObject *obj = [[NSObject alloc] init]; // do some stuff 9 Quick Terminology: Unit Tests Unit tests are very useful for your programs. The tests can help you make sure your code changes are not breaking anything. The goal is to be able to find bugs quicker and fix them before your code goes to QA (or the customer!) 10 Source Control Asks for a loca8on for Source Control By Default, it will use a local GIT repository New developers not used to source control this is extremely useful! It keeps track of versions, lets you see what s changed, and will undoubtedly be used in any team project you run into in the real world GIT and Subversion are two popular source controls systems there are many others to choose from 11 4

5 Where do I start? 12 Let s build the default project Click the Run buuon (upper leg of the screen) The iphone simulator will launch You will have a blank white screen Press Command- Q to end the simulator 13 Quick Terminology: MVC Model- View- Controller (MVC). MVC is the paradigm of ios programming. Model: Holds data, should know nothing of the interface. View: Code for gevng data in/out of a view. Deals with items like buuons, lists, tables, etc. Controller: Keeps the Model objects and View objects in sync. 14 5

6 Quick Terminology: Delegate AppDelegate.h AppDelegate.m The Delegate is essen8ally the controller of your app. It links buuons, labels, and views together..h files are header files and interfaces are defined here..m files are implementa8on files. These contain your classes, code, etc. 15 Quick Terminology: Storyboard These are new to ios5. Storyboards help you graphically lay out your app before you code it. It makes it easy to see the flow of your app. You are advised to use Storyboards going forward with your ios programming adventures If you have 8nkered with ios in the past, you might be asking about the xib/nibs. They are s8ll there, however, Storyboards offer similar func8onality and make it easier to visualize your views. 16 Click on the iphone Storyboard It shows a blank view It looks like you are on a sheet of graph paper There are two buuons below First Responder View Controller 17 6

7 Find the Label In Xcode, lower right hand corner, scroll un8l you find the object Label Drag Label to the blank view Double click on the Label you added, and change it to say Hello World 18 Next, add two buttons to your view Find the Round Rect Buuon, drag two to the view Double- click on one of the buuons and type Hello Double- click on one of the buuons and type Goodbye Run your project, click on the buuons 19 Nothing Happens we have to tell it to do something Click on the Assistant Editor It looks like a tuxedo It will be in the upper right hand corner of your screen 20 7

8 Linking the ViewObject to your ViewController You will see your ViewObject in the middle of the screen The right hand side of the screen should be the ViewController.h file View Object ViewController.h 21 Link the label Single click on your Hello World label While holding down the Control key, leg click- drag to the ViewController.h file You need to drag between in the code This will make a new property For the name, call it hellolabel so we can easily recognize what it is This step will allow us to make changes to the UILabel Remember that Objec8ve- C is an extension to the C language symbol denotes an Objec8ve- C is the start of a Classname: Superclass Anything between the declara8on and end is part of the class 23 8

9 @property (weak, nonatomic) IBOutlet UILabel *hellolabel; A property is an auribute of the class Geuers and Seuers are automa8cally created for you Weak is a memory management term Nonatomic has to do with adding mutexes around your geuers and seuers IBOutlet stands for Interface Builder Outlet. Interface Builder s8ll exists in ios5 but we are using the new Storyboard feature instead. hellolabel Synthesize this creates the accessor/ mutators (geuers/seuers) for you You can write your own if you want, but in general, there is no reason to do this. 25 Link the rest of the buttons Link hellobuuon to ViewController.h Link goodbyebuuon to ViewController.h When done, you will have two proper8es Now, switch the Assistant window to the ViewController.m file 26 9

10 TouchUpInside Actions TouchUpInside events occur if you touch a buuon and lig off while inside the buuon This corresponds to a user tapping a buuon Right- Click on the Hello buuon On the far right, locate Touch Up Inside LeG click- drag this over to your ViewController.m No8ce it creates some code Do the same for the goodbye buuon 27 IBAction You created two IBAc8ons Ac8ons signify something that happens when you do something for example, push a buuon. When you push a buuon, it fires the ac8on These are currently empty methods - (IBAc8on)helloPushed:(id)sender { } - (IBAc8on)goodbyePushed:(id)sender { } 28 Change the UILabel - (IBAc8on)helloPushed:(id)sender { self.hellolabel.text=@"hello Pushed"; } - (IBAc8on)goodbyePushed:(id)sender { self.hellolabel.text=@"goodbye Pushed"; } Self refers to the ViewController class We defined the property hellolabel earlier Text is a property of UILabel s that we can set. Some text is an NSString object that UILabels can display. Run your program and push the buuons. You should see the UILabel change when you press the buuons 29 10

11 Tab Controller If you ve ever used an ios device, you have come across apps that use the tab controller. Several of the built in apps (such as the phone app) use this controller. For the next exercise, we are going to create a simple tab controller. 30 Create a new project Close any exis8ng projects you have open (to make things easier!) Select File- >New- >Project from the applica8on menu 31 Select Tab Template Select the Tabbed Applica8on Template for your project 32 11

12 Set Options For product name, call it tabdemo Whatever you used for Company Iden8fier should be set if not, edu.itu is ok Leave Class Prefix blank For Device family, choose iphone (to keep it simple) Enable Storyboards and ARC Do not select Unit Tests 33 Look at the Storyboard Click on MainStoryboard.Storyboard No8ce how the Tab Bar Controller is shown It also shows the child views associated with the tab bar buuons This lets the developer see the views and path to them at a quick glance. Go ahead and run the project, observe what happens when you tap the tab items. It switches between the views 34 Let s add a new class: ThirdViewController On the leg hand side, right- click on the tabdemo folder and select New File 35 12

13 Pick the type of file We are adding a new ViewController so select Objec:ve- C class 36 Pick the options For Class, type in Third In the Sublass combo box, select UIViewController The IDE will change your class name It is good naming conven8on to have the class be descrip8ve so in this case, ThirdViewController lets any developer know this is a ViewController Leave Targeted for iphone and XIB unchecked 37 Create Take the default op8ons, click the Create buuon 38 13

14 We now have a.h and.m No8ce that you now have two files ThirdViewController.h and ThirdViewController.m If you look at the files, they are basically skeleton classes ready for the developer 39 Add another View Controller Add a new View Controller to the Storyboard AGer you add it, it will not be linked to any view 40 Our new view, all alone No8ce that Storyboard does not have any arrows poin8ng to it The developer will have to make the associa8on as this view could be a sub view of any of the views shown 41 14

15 Link this ViewController to the Tab Controller Hold down the Control key, leg- click drag from the Tab Controller to the new view we just added This tells Storyboard that this view is going to be accessed from the tab controller 42 Select Relationship 43 Label this before we forget Click on the Text Change this to say Third We do not have any graphics if we did, we would want to go ahead and add a graphic for this. Note: you will need graphics for standard iphones, re8na, and ipads

16 Lets be more specific about the class LeG Click on your new view in Storyboard icon on right bouom Click the Iden8fy Inspector (upper right) No8ce how the class is currently UIViewController We need to make this to be associated with our ThirdViewController (which is a subclass of UIViewController) 45 Select ThirdViewController From the combo box, scroll un8l you find ThirdViewController This will let us do any custom ac8ons we might need to do Remember: ThirdViewController has all of the methods and proper8es of a UIViewController! 46 Let s Replace the First View We are going to replace the FirstViewController with a TableViewController Click on First View, hit the Delete buuon to remove it 47 16

17 Drag a Table View Controller From the Object Library, drag over a Table View Controller A good spot would be where you just deleted the other view controller 48 Embed Navigation Controller From the Xcode menu bar, select Editor- >Embed In- >Naviga8on Controller No8ce that another view controller is added to the Storyboard canvas 49 Check it out This is what we did in the previous slide Since the Naviga8on Controller is a container, there is a rela8onship between the Naviga8on controller and the table view controller. (Noted by the connec8ng arrow) 50 17

18 Hook up the Scenes Ctrl- drag from the Tab Bar controller to the Naviga8on controller Select Rela8onship View Controllers 51 Look at Storyboard now The rela8onship is defined When we added this, it added an entry labeled Item as the last tab bar buuon Drag this Item and make it the first entry in our tab bar 52 Fix up the tab bar items Drag item to the leg most posi8on Also, let s rename this back to First Double- click on Item in the Naviga8on Controller scene, change text to First 53 18

19 Name the Navigation bar In the Table View window, double- click on the Title bar. Type in Things to give the Naviga8on bar a name. In a real app, you would type something descrip8ve and meaningful to the user. 54 The Navigation Bar has a title You can now see the 8tle has a name. If you have no8ced, we have been gevng a warning from the compiler for our storyboard. Prototype table cells must have reuse iden8fiers 55 Let s get rid of the warning Warnings are typically not something you want in your program. We are gevng this warning because we have not configured the cells yet so the compiler does not know what they are

20 Table View Controller Click on the blank prototype cell Next, click on the auributes inspector and set Style to Sub8tle. 57 Attributes Inspector 58 More cell attributes Set the Accessory auribute to Disclosure Indicator. Give the cell an iden8fier of ThingsCell. The warning from Xcode is a reminder to developers there is something you need to do if you want this to work. (Side note warnings are something you should not overlook. Several program crashes can stem from warnings people don t pay auen8on to.) 59 20

21 Add a UIViewController subclass template Add a new file to the project. Choose UIViewController subclass template. Name the class ThingsViewController, this will be a subclass of UITableViewController 60 New file 61 Objective-C Class 62 21

22 ThingsViewController 63 Create to add to project 64 Set the class with Identify Inspector Click on the TableViewController object (the whole object will be outlined in blue) Now, click class and select ThingsViewController 65 22

23 Build and run! Go ahead and build the app You can now add items to the table view if you want to con8nue working with this app. 66 Message Passing [(receiver) (message)]; [myview settransform:cgaffinetransformmakerota8on(angle)]; NSString *nicenumber = [numformauer stringfromnumber:[nsnumber numberwithint:(int)numvalue]]; Message parameter names are part of the message name: touchesended:withevent: 67 UIKit AppDelegate Main entry point to applica8on. Analagous to a graphical void main(...). Holds reference to and ini8alizes first View Controller. Many samples use AppDelegate for global variables (not a good idea)

24 Physical Devices Register on Developer Portal ($99 or $299) Get Developer Key Configure App IDs Generate Provisioning Profile Update Xcode w/provisioning Profile Deploy to Device Extremely error- prone and briule process. Follow instruc8ons carefully! 69 24

My First iphone App. 1. Tutorial Overview

My First iphone App. 1. Tutorial Overview My First iphone App 1. Tutorial Overview In this tutorial, you re going to create a very simple application on the iphone or ipod Touch. It has a text field, a label, and a button. You can type your name

More information

1 Build Your First App. The way to get started is to quit talking and begin doing. Walt Disney

1 Build Your First App. The way to get started is to quit talking and begin doing. Walt Disney 1 Build Your First App The way to get started is to quit talking and begin doing. Walt Disney Copyright 2015 AppCoda Limited All rights reserved. Please do not distribute or share without permission. No

More information

My First iphone App (for Xcode version 6.4)

My First iphone App (for Xcode version 6.4) My First iphone App (for Xcode version 6.4) 1. Tutorial Overview In this tutorial, you re going to create a very simple application on the iphone or ipod Touch. It has a text field, a label, and a button

More information

ios Core Data Example Application

ios Core Data Example Application ios Core Data Example Application The Core Data framework provides an abstract, object oriented interface to database storage within ios applications. This does not require extensive knowledge of database

More information

My First Cocoa Program

My First Cocoa Program My First Cocoa Program 1. Tutorial Overview In this tutorial, you re going to create a very simple Cocoa application for the Mac. Unlike a line-command program, a Cocoa program uses a graphical window

More information

ITP 342 Mobile App Dev. Connections

ITP 342 Mobile App Dev. Connections ITP 342 Mobile App Dev Connections User Interface Interactions First project displayed information to the user, but there was no interaction. We want the users of our app to touch UI components such as

More information

iphone App Basics iphone and ipod touch Development Fall 2009 Lecture 5

iphone App Basics iphone and ipod touch Development Fall 2009 Lecture 5 iphone App Basics iphone and ipod touch Development Fall 2009 Lecture 5 Questions? Announcements Assignment #1 due this evening by 11:59pm Remember, if you wish to use a free late you must email me before

More information

Objectives. Submission. Register for an Apple account. Notes on Saving Projects. Xcode Shortcuts. CprE 388 Lab 1: Introduction to Xcode

Objectives. Submission. Register for an Apple account. Notes on Saving Projects. Xcode Shortcuts. CprE 388 Lab 1: Introduction to Xcode Objectives Register for an Apple account Create an application using Xcode Test your application with the iphone simulator Import certificates for development Build your application to the device Expand

More information

CS193P: HelloPoly Walkthrough

CS193P: HelloPoly Walkthrough CS193P: HelloPoly Walkthrough Overview The goal of this walkthrough is to give you a fairly step by step path through building a simple Cocoa Touch application. You are encouraged to follow the walkthrough,

More information

iphone Programming Patrick H. Madden SUNY Binghamton Computer Science Department

iphone Programming Patrick H. Madden SUNY Binghamton Computer Science Department iphone Programming Patrick H. Madden SUNY Binghamton Computer Science Department pmadden@acm.org http://optimal.cs.binghamton.edu General Outline Overview of the tools, and where to get more information

More information

Mac OS X and ios operating systems. Lab 1 Introduction to Mac OS X and ios app development. Gdańsk 2015 Tomasz Idzi

Mac OS X and ios operating systems. Lab 1 Introduction to Mac OS X and ios app development. Gdańsk 2015 Tomasz Idzi Mac OS X and ios operating systems Lab 1 Introduction to Mac OS X and ios app development Gdańsk 2015 Tomasz Idzi Introduction This lab is designed to acquaint the student with the basic functionality

More information

COPYRIGHTED MATERIAL. 1Hello ios! A Suitable Mac. ios Developer Essentials

COPYRIGHTED MATERIAL. 1Hello ios! A Suitable Mac. ios Developer Essentials 1Hello ios! Hello and welcome to the exciting world of ios application development. ios is Apple s operating system for mobile devices; the current version as of writing this book is 5.0. It was originally

More information

Registering for the Apple Developer Program

Registering for the Apple Developer Program It isn t necessary to be a member of the Apple Developer Program if you don t intend to submit apps to the App Stores, or don t need the cloud-dependent features. We strongly recommend joining, though,

More information

The MVC Design Pattern

The MVC Design Pattern The MVC Design Pattern The structure of iphone applications is based on the Model-View-Controller (MVC) design pattern because it benefits object-oriented programs in several ways. MVC based programs tend

More information

ITP 342 Mobile App Dev. Connections

ITP 342 Mobile App Dev. Connections ITP 342 Mobile App Dev Connections User Interface Interactions First project displayed information to the user, but there was no interaction. We want the users of our app to touch UI components such as

More information

Announcements. Today s Topics

Announcements. Today s Topics Announcements Lab 2 is due tonight Lab 3 is posted Due next Wednesday Sept 30 th 1 Extensible - CSE 436 Software Networking Engineering Platform Workshop 1 Today s Topics Designing iphone Applica;ons Model-

More information

Building Mapping Apps for ios With Swift

Building Mapping Apps for ios With Swift Building Mapping Apps for ios With Swift Jeff Linwood This book is for sale at http://leanpub.com/buildingmappingappsforioswithswift This version was published on 2017-09-09 This is a Leanpub book. Leanpub

More information

Topics in Mobile Computing

Topics in Mobile Computing Topics in Mobile Computing Workshop 1I - ios Fundamental Prepared by Y.H. KWOK What is ios? From Wikipedia (http://en.wikipedia.org/wiki/ios): ios is an operating system for iphone, ipad and Apple TV.

More information

In the first class, you'll learn how to create a simple single-view app, following a 3-step process:

In the first class, you'll learn how to create a simple single-view app, following a 3-step process: Class 1 In the first class, you'll learn how to create a simple single-view app, following a 3-step process: 1. Design the app's user interface (UI) in Xcode's storyboard. 2. Open the assistant editor,

More information

Step 1: Open Xcode and select Create a new Xcode Project from the Welcome to Xcode menu.

Step 1: Open Xcode and select Create a new Xcode Project from the Welcome to Xcode menu. In this tutorial we are going to build a simple calculator using buttons that are all linked together using the same method. We will also add our own method to the source code to create some additional

More information

Object-Oriented Programming in Objective-C

Object-Oriented Programming in Objective-C In order to build the powerful, complex, and attractive apps that people want today, you need more complex tools than a keyboard and an empty file. In this section, you visit some of the concepts behind

More information

ITP 342 Mobile App Dev. Interface Builder in Xcode

ITP 342 Mobile App Dev. Interface Builder in Xcode ITP 342 Mobile App Dev Interface Builder in Xcode New Project From the Main Menu, select the File à New à Project option For the template, make sure Application is selected under ios on the left-hand side

More information

Structuring an App Copyright 2013 Apple Inc. All Rights Reserved.

Structuring an App Copyright 2013 Apple Inc. All Rights Reserved. Structuring an App App Development Process (page 30) Designing a User Interface (page 36) Defining the Interaction (page 42) Tutorial: Storyboards (page 47) 29 App Development Process Although the task

More information

Lesson 1: Hello ios! 1

Lesson 1: Hello ios! 1 Contents Introduction xxv Lesson 1: Hello ios! 1 ios Developer Essentials 1 A Suitable Mac 1 A Device for Testing 2 Device Differences 2 An ios Developer Account 4 The Official ios SDK 6 The Typical App

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective The goal of this assignment is to reuse your CalculatorBrain and CalculatorViewController objects to build a Graphing Calculator. By doing this, you will gain

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective The goal of this assignment is to reuse your CalculatorBrain and CalculatorViewController objects to build a Graphing Calculator for iphone and ipad. By doing

More information

Navigation bar (Xcode version 4.5.2) 1. Create a new project. From the Xcode menu, select File > New > Project

Navigation bar (Xcode version 4.5.2) 1. Create a new project. From the Xcode menu, select File > New > Project Navigation bar (Xcode version 4.5.2) 1. Create a new project. From the Xcode menu, select File > New > Project Choose the Single View Application template Click Next. In the Choose options for your new

More information

Getting Started with Apple ios Development Link-OS SDK Objective-C

Getting Started with Apple ios Development Link-OS SDK Objective-C Getting Started with Apple ios Development Link-OS SDK Objective-C Overview This document describes the end to end process of designing, packaging, deploying and running an Apple iphone /ipod application

More information

Praktikum Entwicklung von Mediensystemen mit

Praktikum Entwicklung von Mediensystemen mit Praktikum Entwicklung von Mediensystemen mit Sommersemester 2013 Fabius Steinberger, Dr. Alexander De Luca Today Organization Introduction to ios programming Hello World Assignment 1 2 Organization 6 ECTS

More information

Learn to make watchosle

Learn to make watchosle HACKING WITH SWIFT COMPLETE TUTORIAL COURSE Learn to make watchosle P apps with real-worldam S Swift projects REEPaul Hudson F Project 1 NoteDictate 2 www.hackingwithswift.com Setting up In this project

More information

Assignment I Walkthrough

Assignment I Walkthrough Assignment I Walkthrough Objective Reproduce the demonstration (building a calculator) given in class. Materials By this point, you should have been sent an invitation to your sunet e-mail to join the

More information

OVERVIEW. Why learn ios programming? Share first-hand experience. Identify platform differences. Identify similarities with.net

OVERVIEW. Why learn ios programming? Share first-hand experience. Identify platform differences. Identify similarities with.net OVERVIEW Why learn ios programming? Share first-hand experience. Identify platform differences. Identify similarities with.net Microsoft MVP for 4 years C#, WinForms, WPF, Silverlight Joined Cynergy about

More information

Introductory ios Development

Introductory ios Development Introductory ios Development 152-164 Unit 5 - Multi-View Apps Quick Links & Text References What is a Delegate? What is a Protocol? Delegates, Protocols and TableViews Creating a Master-Detail App Modifying

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective You will enhance your Calculator to create a graph of the program the user has entered which can be zoomed in on and panned around. Your app will now work

More information

Developing Applications for ios

Developing Applications for ios Developing Applications for ios Lab 2: RPN Calculator App (1 of 3) Radu Ionescu raducu.ionescu@gmail.com Faculty of Mathematics and Computer Science University of Bucharest Task 1 Task: Create a new application

More information

ITP 342 Mobile App Dev. Table Views

ITP 342 Mobile App Dev. Table Views ITP 342 Mobile App Dev Table Views Table Views The most common mechanism used to display lists of data to the user Highly configurable objects that can be made to look practically any way you want them

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective You will enhance your Calculator to create a graph of the program the user has entered which can be zoomed in on and panned around. Your app will now work

More information

Learn to make desktop LE

Learn to make desktop LE HACKING WITH SWIFT COMPLETE TUTORIAL COURSE Learn to make desktop LE P apps with real-worldam S Swift projects REEPaul Hudson F Project 1 Storm Viewer Get started coding in Swift by making an image viewer

More information

Xcode Release Notes. Apple offers a number of resources where you can get Xcode development support:

Xcode Release Notes. Apple offers a number of resources where you can get Xcode development support: Xcode Release Notes This document contains release notes for Xcode 5 developer preview 4. It discusses new features and issues present in Xcode 5 developer preview 4 and issues resolved from earlier Xcode

More information

Duration 5 days (For basic crowd 5+3days needed)

Duration 5 days (For basic crowd 5+3days needed) There's never been a better time to develop for Apple Platforms It is now much easier to develop ios apps than ever with Swift and Xcode. This ios apps development course guides you systematically from

More information

Installing and getting started with Xcode for Mac OS.

Installing and getting started with Xcode for Mac OS. Installing and getting started with Xcode for Mac OS. 1. Go to the Mac App store. Do a search for Xcode. Then download and install it. (It s free.) Give it some time it may take a while. (A recent update

More information

S A M P L E C H A P T E R

S A M P L E C H A P T E R SAMPLE CHAPTER Anyone Can Create an App by Wendy L. Wise Chapter 5 Copyright 2017 Manning Publications brief contents PART 1 YOUR VERY FIRST APP...1 1 Getting started 3 2 Building your first app 14 3 Your

More information

Page 1. GUI Programming. Lecture 13: iphone Basics. iphone. iphone

Page 1. GUI Programming. Lecture 13: iphone Basics. iphone. iphone GUI Programming Lecture 13: iphone Basics Until now, we have only seen code for standard GUIs for standard WIMP interfaces. Today we ll look at some code for programming mobile devices. on the surface,

More information

iphone Development Setup Instructions Nikhil Yadav Pervasive Health Fall 2011

iphone Development Setup Instructions Nikhil Yadav Pervasive Health Fall 2011 iphone Development Setup Instructions Nikhil Yadav Pervasive Health Fall 2011 Requirements Apple Mac Computer (Desktop or laptop) with recent snow leopard builds Apple Developer Registered Profile (create

More information

Hello! ios Development

Hello! ios Development SAMPLE CHAPTER Hello! ios Development by Lou Franco Eitan Mendelowitz Chapter 1 Copyright 2013 Manning Publications Brief contents PART 1 HELLO! IPHONE 1 1 Hello! iphone 3 2 Thinking like an iphone developer

More information

ITP 342 Mobile App Dev. Table Views

ITP 342 Mobile App Dev. Table Views ITP 342 Mobile App Dev Table Views Tables A table presents data as a scrolling, singlecolumn list of rows that can be divided into sections or groups. Use a table to display large or small amounts of information

More information

due by noon ET on Wed 4/4 Note that submitting this project s Google form will take some time; best not to wait until the last minute!

due by noon ET on Wed 4/4 Note that submitting this project s Google form will take some time; best not to wait until the last minute! ios: Setup Hello, World: ios Edition due by noon ET on Wed 4/4 Note that submitting this project s Google form will take some time; best not to wait until the last minute! Ingredients. Objective- C Xcode

More information

Xcode Release Notes. Apple offers a number of resources where you can get Xcode development support:

Xcode Release Notes. Apple offers a number of resources where you can get Xcode development support: Xcode Release Notes This document contains release notes for Xcode 5 developer preview 5. It discusses new features and issues present in Xcode 5 developer preview 5 and issues resolved from earlier Xcode

More information

Integrating Game Center into a BuzzTouch 1.5 app

Integrating Game Center into a BuzzTouch 1.5 app into a BuzzTouch 1.5 app This tutorial assumes you have created your app and downloaded the source code; created an App ID in the ios Provisioning Portal, and registered your app in itunes Connect. Step

More information

iphone Programming Touch, Sound, and More! Norman McEntire Founder Servin Flashlight CodeTour TouchCount CodeTour

iphone Programming Touch, Sound, and More! Norman McEntire Founder Servin Flashlight CodeTour TouchCount CodeTour iphone Programming Touch, Sound, and More! Norman McEntire Founder Servin 1 Legal Info iphone is a trademark of Apple Inc. Servin is a trademark of Servin Corporation 2 Welcome Welcome! Thank you! My promise

More information

Index. btndrop function, 224, 226 btngetquote function, 246 btnpressed function, 28 btnquote method, 245. CallWeb method, 238, 240

Index. btndrop function, 224, 226 btngetquote function, 246 btnpressed function, 28 btnquote method, 245. CallWeb method, 238, 240 Index A App icons section icons set, 277 LaunchImage, 278 launch screen graphics, 278 279 PNG format, 277 settings, 276 App store deployment application graphics, 273 general settings Identity section,

More information

Application Development in ios 7

Application Development in ios 7 Application Development in ios 7 Kyle Begeman Chapter No. 1 "Xcode 5 A Developer's Ultimate Tool" In this package, you will find: A Biography of the author of the book A preview chapter from the book,

More information

CS193p Spring 2010 Wednesday, March 31, 2010

CS193p Spring 2010 Wednesday, March 31, 2010 CS193p Spring 2010 Logistics Lectures Building 260 (History Corner) Room 034 Monday & Wednesday 4:15pm - 5:30pm Office Hours TBD Homework 7 Weekly Assignments Assigned on Wednesdays (often will be multiweek

More information

Importing source database objects from a database

Importing source database objects from a database Importing source database objects from a database We are now at the point where we can finally import our source database objects, source database objects. We ll walk through the process of importing from

More information

Building GUIs with UIKit. Kevin Cathey

Building GUIs with UIKit. Kevin Cathey Building GUIs with UIKit Kevin Cathey Building GUIs with UIKit acm.uiuc.edu/macwarriors/devphone Building GUIs with UIKit What is UIKit? acm.uiuc.edu/macwarriors/devphone Building GUIs with UIKit What

More information

Stanford CS193p. Developing Applications for ios. Fall CS193p. Fall

Stanford CS193p. Developing Applications for ios. Fall CS193p. Fall Stanford Developing Applications for ios Today Drag and Drop Transferring information around within and between apps. EmojiArt Demo Drag and drop an image to get our EmojiArt masterpieces started. UITableView

More information

Appeasing the Tiki Gods

Appeasing the Tiki Gods Chapter 2 Appeasing the Tiki Gods As you re probably well aware, it has become something of a tradition to call the first project in any book on programming Hello, World. We considered breaking with this

More information

S A M P L E C H A P T E R

S A M P L E C H A P T E R SAMPLE CHAPTER Anyone Can Create an App by Wendy L. Wise Chapter 2 Copyright 2017 Manning Publications brief contents PART 1 YOUR VERY FIRST APP...1 1 Getting started 3 2 Building your first app 14 3 Your

More information

ITP 342 Advanced Mobile App Dev. Memory

ITP 342 Advanced Mobile App Dev. Memory ITP 342 Advanced Mobile App Dev Memory Memory Management Objective-C provides two methods of application memory management. 1. In the method described in this guide, referred to as manual retain-release

More information

Contents. iphone Training. Industry Trainers. Classroom Training Online Training ON-DEMAND Training. Read what you need

Contents. iphone Training. Industry Trainers. Classroom Training Online Training ON-DEMAND Training. Read what you need iphone Training Contents About iphone Training Our ios training classes can help you get off to a running start in iphone, ipod and ipad app development. Learn from expert Objective-C developers with years

More information

ITP 342 Mobile App Dev. Interface Fun

ITP 342 Mobile App Dev. Interface Fun ITP 342 Mobile App Dev Interface Fun Human Interface Guidelines ios Human Interface Guidelines https://developer.apple.com/ library/ios/documentation/ userexperience/conceptual/ MobileHIG/index.html 2

More information

CSC 581: Mobile App Development Spring 2019

CSC 581: Mobile App Development Spring 2019 CSC 581: Mobile App Development Spring 2019 Unit 1: Getting Started with App Development Xcode installing XCode, creating a project, MVC pattern interface builder, storyboards, object library outlets vs.

More information

Xcode 6 Start to Finish

Xcode 6 Start to Finish Xcode 6 Start to Finish ios and OS X Development Fritz Anderson VAddison-Wesley New York Boston Indianapolis San Francisco Toronto Montreal Capetown Sydney London Munich Paris Madrid Tokyo Singapore Mexico

More information

The requirements according to Autodesk are to be using Xcode with the 10.8 SDK(comes with it). Xcode 6 does not have this SDK.

The requirements according to Autodesk are to be using Xcode with the 10.8 SDK(comes with it). Xcode 6 does not have this SDK. The requirements according to Autodesk are to be using Xcode 5.0.2 with the 10.8 SDK(comes with it). Xcode 6 does not have this SDK. Unfortunately, when Apple updates Xcode it breaks everything, every

More information

A Mad Libs app that you will navigate through 3 UIViewControllers to add text that will be shown in a story on the fourth UIViewController.

A Mad Libs app that you will navigate through 3 UIViewControllers to add text that will be shown in a story on the fourth UIViewController. WordPlay App: A Mad Libs app that you will navigate through 3 UIViewControllers to add text that will be shown in a story on the fourth UIViewController. Create a new project Create a new Xcode project

More information

ios Application Development Course Details

ios Application Development Course Details ios Application Development Course Details By Besant Technologies Course Name Category Venue ios Application Development Mobile Application Development Besant Technologies No.24, Nagendra Nagar, Velachery

More information

Xcode 6 and ios 8 What s New for Software Developers

Xcode 6 and ios 8 What s New for Software Developers Xcode 6 and ios 8 What s New for Software Developers August 2014 Norman McEntire! norman.mcentire@servin.com Slides and Video of this presentation will be posted on Tuesday Aug 26 here: http://servin.com!1

More information

Apple Watch Docs. Release 0.1. Michael Hahn

Apple Watch Docs. Release 0.1. Michael Hahn Apple Watch Docs Release 0.1 Michael Hahn Nov 20, 2017 Contents 1 First Watch Glance 3 1.1 Create an iphone App.......................................... 3 1.2 Add WatchKit Targets..........................................

More information

ios Developer s Guide Version 1.0

ios Developer s Guide Version 1.0 HealthyFROGS ios Developer s Guide ios Developer s Guide Version 1.0 Tuesday May 7, 2013 2012-2013 Computer Science Department, Texas Christian University - All Rights Reserved HealthyFROGS ios Developer

More information

Web 2.0 and iphone Application Development Workshop. Lab 5: Multimedia on iphone

Web 2.0 and iphone Application Development Workshop. Lab 5: Multimedia on iphone Web 2.0 and iphone Application Development Workshop This lab is prepared by: Department of Electrical and Electronic Engineering, Faculty of Engineering, The University of Hong Kong Lab 5: Multimedia on

More information

Setting Up Your ios Development Environment. For Mac OS X (Mountain Lion) v1.0. By GoNorthWest. 5 February 2013

Setting Up Your ios Development Environment. For Mac OS X (Mountain Lion) v1.0. By GoNorthWest. 5 February 2013 Setting Up Your ios Development Environment For Mac OS X (Mountain Lion) v1.0 By GoNorthWest 5 February 2013 Setting up the Apple ios development environment, which consists of Xcode and the ios SDK (Software

More information

Objec0ves. Gain understanding of what IDA Pro is and what it can do. Expose students to the tool GUI

Objec0ves. Gain understanding of what IDA Pro is and what it can do. Expose students to the tool GUI Intro to IDA Pro 31/15 Objec0ves Gain understanding of what IDA Pro is and what it can do Expose students to the tool GUI Discuss some of the important func

More information

Stanford CS193p. Developing Applications for ios. Fall Stanford CS193p. Fall 2011

Stanford CS193p. Developing Applications for ios. Fall Stanford CS193p. Fall 2011 Developing Applications for ios Today UI Element of the Week UIToolbar ipad Split View Popover Universal (iphone + ipad) Application Demo Friday Section AVFoundation framework - Capturing and manipulating

More information

Apple SIG Meeting January 4

Apple SIG Meeting January 4 Page 1 Apple SIG Meeting January 4 Managing Photos on Mac Add pictures and videos to albums in Photos for OS X 1 Launch Photos on your Mac. 2 Click on the Albums tab in the top navigation. 3 Click on All

More information

Using Dreamweaver CC. Logo. 4 Creating a Template. Page Heading. Page content in this area. About Us Gallery Ordering Contact Us Links

Using Dreamweaver CC. Logo. 4 Creating a Template. Page Heading. Page content in this area. About Us Gallery Ordering Contact Us Links Using Dreamweaver CC 4 Creating a Template Now that the main page of our website is complete, we need to create the rest of the pages. Each of them will have a layout that follows the plan shown below.

More information

lecture 10 UI/UX and Programmatic Design cs : spring 2018

lecture 10 UI/UX and Programmatic Design cs : spring 2018 lecture 10 UI/UX and Programmatic Design cs198-001 : spring 2018 1 Announcements custom app progress form due before lab (~1 minute) will be released after lecture only 2 labs left (both very important)

More information

Architecting ios Project. Massimo Oliviero

Architecting ios Project. Massimo Oliviero Architecting ios Project Massimo Oliviero Massimo Oliviero Freelance Software Developer web http://www.massimooliviero.net email massimo.oliviero@gmail.com slide http://www.slideshare.net/massimooliviero

More information

Hello guys, In this tutorial, I am going to tell you that how we can integrate a custom framework in our Xcode project using cocoa pods.

Hello guys, In this tutorial, I am going to tell you that how we can integrate a custom framework in our Xcode project using cocoa pods. Hello guys, In this tutorial, I am going to tell you that how we can integrate a custom framework in our Xcode project using cocoa pods. Things we need to do this tutorial are: Macbook or system that supports

More information

John Ray. Sams Teach Yourself. iphone. Application Development. Second Edition. S^/MS 800 East 96th Street, Indianapolis, Indiana, USA

John Ray. Sams Teach Yourself. iphone. Application Development. Second Edition. S^/MS 800 East 96th Street, Indianapolis, Indiana, USA John Ray Sams Teach Yourself iphone Application Development Second Edition S^/MS 800 East 96th Street, Indianapolis, Indiana, 46240 USA Table of Contents Introduction 1 Who Can Become an iphone Developer?

More information

Save and Restore Backups using itunes File Sharing

Save and Restore Backups using itunes File Sharing Save and Restore Backups using itunes File Sharing Proloquo2Go (ipad, iphone and ipod touch). In this tutorial you will learn how to create, export and import backups with itunes File Sharing using the

More information

Designing iphone Applications

Designing iphone Applications Designing iphone Applications 4 Two Flavors of Mail 5 Organizing Content 6 Organizing Content 6 Organizing Content 6 Organizing Content 6 Organizing Content Focus on your user s data 6 Organizing Content

More information

Corrections and version notes

Corrections and version notes Last updated 7 th May, 2014 Programming apps for the iphone Corrections and version notes Please feel free to email Graeme (gbsummers@graemesummers.info) for additional help or clarification on any of

More information

CSE 438: Mobile Application Development Lab 2: Virtual Pet App

CSE 438: Mobile Application Development Lab 2: Virtual Pet App CSE 438: Mobile Application Development Lab 2: Virtual Pet App Overview In this lab, you will create an app to take care of your very own virtual pets! The app will only have one screen and simple logic,

More information

ios 9 SDK Development

ios 9 SDK Development Extracted from: ios 9 SDK Development Creating iphone and ipad Apps with Swift This PDF file contains pages extracted from ios 9 SDK Development, published by the Pragmatic Bookshelf. For more information

More information

Stanford CS193p. Developing Applications for ios. Fall CS193p. Fall

Stanford CS193p. Developing Applications for ios. Fall CS193p. Fall Stanford Developing Applications for ios Today More about Documents Demo Use Codable to create a JSON representation of our document Store it in the filesystem Think better of that and let UIDocument store

More information

CS193E: Temperature Converter Walkthrough

CS193E: Temperature Converter Walkthrough CS193E: Temperature Converter Walkthrough The goal of this walkthrough is to give you a fairly step by step path through building a simple Cocoa application. You are encouraged to follow the walkthrough,

More information

About Xcode and iphone SDK

About Xcode and iphone SDK apple About Xcode and iphone SDK iphone SDK and Xcode 3.1.2 developer tools for iphone OS 2.2 Contents Introduction Compatibility with Mac OS X Versions What's New Installation Deprecation Notice Introduction

More information

ipad + itunes Tips & Tricks 2012

ipad + itunes Tips & Tricks 2012 Contents How to Set Up a Brand New ipad Without Wi-Fi Access... 1 Prevent Syncing... 4 Setting up an itunes Account Without a Credit Card... 5 Purchasing & Transferring Apps to an ipad Using a Laptop...

More information

MVC and Interface Builder IAP 2010

MVC and Interface Builder IAP 2010 MVC and Interface Builder IAP 2010 iphonedev.csail.mit.edu edward benson / eob@csail.mit.edu Information-Driven Applications Application Flow UIApplication Main NIB Initialized UIAppDelegate - (void)applicationdidfinishlaunching:(uiapplication

More information

Mobile App Development. ios Platform

Mobile App Development. ios Platform Mobile App Development ios Platform Overview Introduction Development Environment & Tools App Store Pros & Cons Programming Recommendations Objective-C Primer Demo What is ios? An operating system that

More information

Beginner s Training Manual

Beginner s Training Manual Table of Contents Designing an App... 2 Modify Existing App... 12 Adding a Database... 13 Adding Controls to an Activity... 17 Activity Controls: Logic and Setup... 21 System Settings... 27 Designing the

More information

Assignment II: Calculator Brain

Assignment II: Calculator Brain Assignment II: Calculator Brain Objective You will start this assignment by enhancing your Assignment 1 Calculator to include the changes made in lecture (i.e. CalculatorBrain, etc.). This is the last

More information

A product of Byte Works, Inc. Credits Programming Mike Westerfield. Art Karen Bennett. Documentation Mike Westerfield

A product of Byte Works, Inc.  Credits Programming Mike Westerfield. Art Karen Bennett. Documentation Mike Westerfield A product of Byte Works, Inc. http://www.byteworks.us Credits Programming Mike Westerfield Art Karen Bennett Documentation Mike Westerfield Copyright 2016 By The Byte Works, Inc. All Rights Reserved Apple,

More information

Learn to make ios apps

Learn to make ios apps HACKING WITH SWIFT PROJECTS 1-39 Learn to make ios apps E L P with real projects SAM E E FR Paul Hudson Project 1 Storm Viewer Get started coding in Swift by making an image viewer app and learning key

More information

Table of Contents Page 2

Table of Contents Page 2 OE TOUCH Table of Contents App User Guide... 3 Overview... 4 Features... 5 Installing the App... 6 Logging In... 7 Navigation... 13 Shop for Product... 15 Product Detail... 22 Shopping Cart... 29 Checkout...

More information

Working with Text, Keyboards, and Buttons

Working with Text, Keyboards, and Buttons HOUR 7 Working with Text, Keyboards, and Buttons What You ll Learn in This Hour: u How to use text fields u Input and output in scrollable text views u How to enable data detectors u A way to spruce up

More information

CommCare for Android Smartphones

CommCare for Android Smartphones CommCare for Android Smartphones The information on this page reflects the old design of CommCare This page is primarily useful for programs using older versions of CommCare. A page directed at the newer

More information

ios DeCal : Lecture 2 Structure of ios Applications: MVC and Auto Layout

ios DeCal : Lecture 2 Structure of ios Applications: MVC and Auto Layout ios DeCal : Lecture 2 Structure of ios Applications: MVC and Auto Layout Overview : Today s Lecture Model View Controller Design Pattern Creating Views in Storyboard Connecting your Views to Code Auto

More information

Toyin Adedokun & Daniel Laughlin. Exploring the iphone SDK

Toyin Adedokun & Daniel Laughlin. Exploring the iphone SDK Toyin Adedokun & Daniel Laughlin Exploring the iphone SDK Purpose - Flashcards Provide simple way of creating & viewing flashcards Clean, simple interface Integrate with familiar application such as Google

More information

COMPLETE TUTORIAL COURSE. Learn to make tvos LE. apps with real-worldam S F

COMPLETE TUTORIAL COURSE. Learn to make tvos LE. apps with real-worldam S F HACKING WITH SWIFT COMPLETE TUTORIAL COURSE Learn to make tvos LE P apps with real-worldam S Swift projects REEPaul Hudson F Project 1 Randomly Beautiful 2 www.hackingwithswift.com Setting up In this first

More information