Widget Tour. iphone and ipod touch Development Fall 2009 Lecture 7

Size: px
Start display at page:

Download "Widget Tour. iphone and ipod touch Development Fall 2009 Lecture 7"

Transcription

1 Widget Tour iphone and ipod touch Development Fall 2009 Lecture 7

2 Questions?

3 Announcements Assignment #2 due Tonight by 11:59pm

4 Today s Topics Controls Buttons Switches Sliders Segmented Controls Text Fields Views Pickers Progress Bars Activity Indicators Images Views

5 Notes I m showing the relevant portions of the view controller interfaces and implementations in these notes Remember to release relevant memory in the -dealloc methods they are not shown here You will also need to wire up outlets and actions in IB Where delegates are used, they too require wiring in IB

6 Buttons

7 UIButton We ve already seen the basic UIButton known as the Rounded Rectangle type However, there are several other built-in button types Additionally, the iphone SDK allows us to roll our own button types

8 Button Attributes Types Here we see the various built in types Info light/dark are the small little i buttons commonly used to bring up the app s preferences The Detail Disclosure and Add Contact are circular buttons commonly used with contacts

9 Button Attributes States Buttons have several states.. Default normal unpressed Highlighted when pressed Disabled if button is turned off Selected if the button s selected property is set Typically selected is not used (at least on buttons) use a switch instead

10 Common Methods/Properties Method for getting the title for a given state - (NSString *)titleforstate:(uicontrolstate)state; Method for setting the title for a given state - (void)settitle:(nsstring *)title forstate:(uicontrolstate)state;

11 Other Methods/Properties There are also groups of methods/properties for... Creating buttons (in code) Configuring the button (images, title, insets) Getting the current state Getting the dimensions of a button Get all sorts of configuration information Get the type of button (Rounded Rectangle, Info, etc.)

12 ButtonsViewController.h #import ButtonsViewController : UIViewController {! UIButton *roundedrectangle;! UIButton *detaildisclosure;! UIButton *addcontact;! UIButton *infodark;! UIButton *infolight;! UILabel *info; IBOutlet UIButton IBOutlet UIButton IBOutlet UIButton IBOutlet UIButton IBOutlet UIButton IBOutlet UILabel *info; -

13 ButtonsViewController.m #import roundedrectangle,detaildisclosure,addcontact,infodark,infolight,info; - (IBAction)buttonPress:(id)sender { if(sender == self.roundedrectangle) { self.info.text Rectangle"; } else if(sender == self.detaildisclosure) { self.info.text Disclosure"; } else if(sender == self.addcontact) { self.info.text Contact"; } else if(sender == self.infodark) { self.info.text Dark"; } else if(sender == self.infolight) { self.info.text Light"; } else if(sender == self.custom) { self.info.text Button"; } } /*... Xcode provided methods...

14 Custom Colors Colors can be easily customized for the various states by simply using the choosers on the attributes tab

15 Custom Colors Our resulting (eyebleeding) custom colors The left is the default state The right is the highlighted state

16 Images as Buttons We can also provide our own image to be used as a button You can even specify different images for different states

17 Images as Buttons Simply drag and drop the images (as PNGs) into your Xcode project A common place people drop the images is into the Resources folder You ll usually want to create a copy Folder structure in Xcode is not the same as on disk

18 Images as Buttons To use an image as a button, select the Custom type

19 Images as Buttons Once the image is added, simply select the image you want to use for each state

20 Images as Buttons The last step in this process is to tell Interface Builder the size of the images so they don t get cropped

21 The resulting button... Images as Buttons

22 Custom Buttons Many apps customize buttons to match the overall color scheme or appearance of the app Rather than having to create all these different buttons, we can provide an image to be used as a template for creating button backgrounds

23 Using Stretchable Button Images The UIImage class has the following method... - (UIImage *)stretchableimagewithleftcapwidth:(nsinteger)leftcapwidth topcapheight:(nsinteger)topcapheight; This method returns an image (based on the current image) which will stretch to fill the button s space in a very specific way The left and top cap values define where the image gets cut and how it gets repeated

24 Using Stretchable Button Images Given the following image: And code... UIImage *buttonnormal = [UIImage imagenamed:@"bluebutton.png"]; UIImage *stretchnormal = [buttonnormal stretchableimagewithleftcapwidth:12 topcapheight:0]; Let s see what happens...

25 Using Stretchable Button Images The left cap of 12px appears as the left side of the button (Note: the image actually contains an alpha channel, shown here on a white background for visibility) Left side 12px cap

26 Using Stretchable Button Images The right side (less the cap) will appear on the right side of the button Right side width - 12px

27 Using Stretchable Button Images The column immediately following the cap will be repeated to fill the gap Similar rules apply to top caps Stretched Column

28 Code to Apply Stretchable Button Images // Implement viewdidload to do additional setup after // loading the view, typically from a nib. - (void)viewdidload {! [super viewdidload];! UIImage *buttonnormal = [UIImage imagenamed:@"graybutton.png"]; UIImage *stretchnormal = [buttonnormal stretchableimagewithleftcapwidth:12 topcapheight:0]; [custom setbackgroundimage:stretchnormal forstate:uicontrolstatenormal];! } UIImage *buttonpressed = [UIImage imagenamed:@"bluebutton.png"]; UIImage *stretchpressed = [buttonpressed stretchableimagewithleftcapwidth:12 topcapheight:0]; [custom setbackgroundimage:stretchpressed forstate:uicontrolstatehighlighted];

29 The resulting buttons... Stretchable Button Images

30 Switches

31 UISwitch You use the UISwitch class to create and manage the On/Off buttons you see in numerous apps This is the equivalent of a checkbox for iphone development

32 UISwitch Attributes UISwitches don t have nearly as many options as buttons You can however set the default state for the switch on or off

33 Common Methods/Properties Allows you to read or set (without any animation) the position of the getter=ison) BOOL on; Sets the switch to the specified position and optionally animates the toggling of the switch - (void)seton:(bool)on animated:(bool)animated;

34 Other Methods/Properties Not much else of interest for UISwitch...

35 SwitchesViewController.h #import SwitchesViewController : UIViewController { UISwitch *switch1; UISwitch *switch2; UILabel *info; IBOutlet UISwitch IBOutlet UISwitch IBOutlet UILabel *info; -

36 SwitchesViewController.m #import switch1, switch2, info; - (IBAction)toggle:(id)sender { if(sender == self.switch1) { self.info.text Switch 1";! [self.switch2 seton:!self.switch2.ison animated:yes]; } else { self.info.text Switch 2"; [self.switch1 seton:!self.switch1.ison animated:yes]; } }! /*... Xcode provided methods...

37 Sliders

38 UISlider A UISlider object is a control used to select a single value from a continuous range of values Unlike other toolkits, sliders on the iphone are always displayed horizontally

39 UISlider Attributes UISliders provide several points of customization You can specify the range of the slider and initial value of the thumb You can also provide images for either end of the slider Like the brightness part of the settings app

40 Common Methods/Properties Property to get or set (without animation) the current value of the float value; Sets the slider to the specified value and optionally animates the moving the thumb to the new value - (void)setvalue:(float)value animated:(bool)animated;

41 Other Methods/Properties There are also groups of methods/properties for... Accessing the limit values of a slider Modifying continuous behavior Modifying appearance via images Methods to facilitate subclassing

42 SlideViewController.h #import SliderViewController : UIViewController { UISlider *red; UISlider *green; UISlider *blue; retain) IBOutlet UISlider retain) IBOutlet UISlider retain) IBOutlet UISlider *blue; -

43 SlideViewController.m #import red, green, blue; - (IBAction)updateColor { self.view.backgroundcolor = [UIColor colorwithred:red.value green:green.value blue:blue.value alpha:1.0]; } /*... Xcode provided methods...

44 Segmented Controls

45 UISegmentedConrol A UISegmentedControl is a horizontal control consisting of multiple segments Only one segment may be selected at a given point in time Much like radio buttons in other toolkits

46 UISegmentedControl Attributes The number of segments can be specified For each segment, you can specify the title (or image) and choose if that segment is the selected index

47 Common Methods/Properties Returns the segment currently selected (zero based) or -1 if no segment is NSInteger selectedsegmentindex; Returns the title for the given segment index - (NSString *)titleforsegmentatindex:(nsuinteger)segment;

48 Other Methods/Properties There are also groups of methods/properties for... Initializing (in code) Managing content (image, text, etc.) Adding/Removing segments Modifying behavior and appearance

49 SegmentedConrolsViewController.h #import SegmentedControlsViewController : UIViewController { UISegmentedControl *foobar; UISegmentedControl *yesmaybeno; UISegmentedControl *beerwinecoffee; UILabel *info; retain) IBOutlet UISegmentedControl retain) IBOutlet UISegmentedControl retain) IBOutlet UISegmentedControl retain) IBOutlet UILabel *info; -

50 SegmentedConrolsViewController.m #import foobar, yesmaybeno, beerwinecoffee, info; - (IBAction)changeSelection:(id)sender { if(sender == foobar sender == yesmaybeno) { self.info.text = [sender titleforsegmentatindex: [sender selectedsegmentindex]]; } else { NSArray *opts = nil]; self.info.text = [opts objectatindex: [sender selectedsegmentindex]]; } } /*... Xcode provided methods...

51 Text Fields

52 UITextField We ve already seen the basics of text fields, but there are a lot of additional styles and options...

53 UITextField Attributes Placeholder is text that appears in the box when empty (in lieu of a label) Border determines outline Clear button allows you to specify if and when the x appears Clear When Editing Begins determines if the contents should be erased when the text field is selected We ve already see some of the keyboard configurations Secure masks the text being entered

54 Common Methods/Properties We ve already seen the text copy) NSString *text; And the delegate assign) id<uitextfielddelegate> delegate;

55 Other Methods/Properties There are also groups of methods/properties for... Accessing the text attributes (font, color, etc.) Adjusting the size (minimum font size, etc.) Managing editing behavior Setting background Clear behaviors Drawing information

56 TextFieldsViewController.h #import TextFieldsViewController : UIViewController <UITextFieldDelegate> { UITextField *field1, *field2, *field3, *field4, *field5, *field6; UILabel *info; retain) IBOutlet UITextField retain) IBOutlet UITextField retain) IBOutlet UITextField retain) IBOutlet UITextField retain) IBOutlet UITextField retain) IBOutlet UITextField retain) IBOutlet UILabel *info; - (BOOL)textFieldShouldReturn:(UITextField

57 TextFieldsViewController.m #import field1, field2, field3, field4, field5, field6; - (BOOL)textFieldShouldReturn:(UITextField *)textfield { [textfield resignfirstresponder]; self.info.text = [NSString stringwithformat:@"you entered: '%@'", textfield.text]; return YES; } /*... Xcode provided methods

58 Pickers

59 Pickers Provides a spinning wheel or slot machine metaphor to select from a list of multiple values Potentially multiple segments per wheel Use in lieu of a select or drop down menu

60 Pickers Picker views come in one of 2 flavors... UIDatePicker UIPickerView

61 Date & Time Pickers

62 UIDatePicker Attributes There are many different options for the date picker class First and foremost is the type of date picker you want there are 4 You can also set attributes for the start and stop values

63 UIDatePicker Types Date & Time Time Date Timer

64 Common Methods/Properties Property to get or set (without animation) the date represented by the date retain) NSDate *date; An animated setter method... - (void)setdate:(nsdate *)date animated:(bool)animated;

65 Other Methods/Properties There are also groups of methods/properties for... Getting localization related items (locale, time zone, etc) Configuring the mode (the 4 types) of date pickers Setting min/max/interval values

66 Pickers1ViewController.h #import Pickers1ViewController : UIViewController { UIDatePicker *picker; UILabel *info;! retain) IBOutlet UIDatePicker retain) IBOutlet UILabel *info; -

67 Pickers1ViewController.m #import picker, info; - (IBAction)getDateTime { self.info.text = [self.picker.date description]; } /*... Xcode provided methods

68 The resulting UI... UIDatePicker Example

69 Custom Pickers

70 UIPickerView The UIPickerView is a bit more complex The UIPickerView object requires the adoption of 2 protocols... UIPickerViewDelegate responsible for specifying what the cells look like UIPickerViewDataSource provides data about the number of components (wheels) and the number of rows (how many items per wheel)

71 UIPickerView Attributes The only interesting option here is the ability to hide or show the bar that s used to designate the current row

72 UIPickerView Methods/Properties There are groups of methods/properties for... Getting the size of the picker Reloading the view Selecting given items in the picker Setting the 2 delegates

73 UIPickerViewDelegate One of the following methods must be adopted in order for the UIPickerView to function... - (NSString *)pickerview:(uipickerview *)pickerview titleforrow:(nsinteger)row forcomponent:(nsinteger)component; - (UIView *)pickerview:(uipickerview *)pickerview viewforrow:(nsinteger)row forcomponent:(nsinteger)component reusingview:(uiview *)view; The first one simply requires the adopter to implement a title lookup method The second method actually returns a subview allowing for more customization

74 UIPickerViewDataSource The following 2 data source methods must be implemented in order for the picker to function properly - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerview; - (NSInteger)pickerView:(UIPickerView *)pickerview numberofrowsincomponent:(nsinteger)component; The first method tells the picker how many components (wheels) the view should have The second method tells the picker how many rows per a given component (the number of things on the wheel)

75 Reminder Be sure to wire up the delegates to the view controller (File s Owner) in Interface Builder If not, you re not going to be seeing much

76 Picker2ViewController.h #import Picker2ViewController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource> {! UIPickerView *picker;! NSArray *data;! UILabel *info;! retain) IBOutlet UIPickerView retain) NSArray retain) IBOutlet UILabel *info; -

77 Picker2ViewController.m #import picker, info, data; - (void)viewdidload { [super viewdidload]; self.data = @"Pineapples", nil]; } /*... */

78 Picker2ViewController.m /*... */ - (IBAction)getValue { self.info.text = [self.data objectatindex:[self.picker selectedrowincomponent:0]]; } - (NSString *)pickerview:(uipickerview *)pickerview titleforrow:(nsinteger)row forcomponent:(nsinteger)component { return [self.data objectatindex:row]; } - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerview { return 1; } - (NSInteger)pickerView:(UIPickerView *)pickerview numberofrowsincomponent:(nsinteger)component { return [self.data count]; } /*... Xcode provided methods...

79 The resulting UI... Custom UIPickerView Example

80 Progress Indicators

81 UIProgressView Typically this is used to show progress of some task, though some people simply use it as a means of displaying a value

82 UIProgressView Attributes For progress views you have the choice of 2 (similar) styles You can also set the default value (on a scale of zero to one) of the progress view

83 Common Methods/Properties The progress property can be used to get or set the value of the float progress;

84 Other Methods/Properties There are a few other methods for... Initializing a progress bar (in code) Getting/Setting the style of the bar

85 ProgressViewController.h #import ProgressViewController : UIViewController {! } UIProgressView *progress; UIButton *increase; UIButton retain) IBOutlet UIProgressView retain) IBOutlet UIButton retain) IBOutlet UIButton *decrease; -

86 ProgressViewController.m #import progress, increase, decrease; - (IBAction)update:(id)sender { if(sender == self.increase) { self.progress.progress +=.01; } else if(sender == self.decrease) { self.progress.progress -=.01; } } /*... Xcode provided methods...

87 Activity Indicators

88 UIActivityIndicatorView A UIActivityIndicatorView is used as a clue to cue users that some activity is taking place that is not necessarily visible Such as loading something from the web

89 UIActivityIndicatorView Attributes For activity indicators you have the choice of 3 different styles 1 large, 2 smaller throbbers You can also make the throbber disappear when not animated You can also set the throbber to hide when not animated

90 Common Methods/Properties Method to start the throbber... - (void)startanimating; Stop the throbber... - (void)stopanimating; Check to see if it is currently running... - (BOOL)isAnimating;

91 Other Methods/Properties There are groups of methods/properties for... Initializing a throbber (in code) Get/Set the hiding behavior Get/Set the style of the throbber

92 ActivityIndicatorViewController.h #import ActivityIndicatorViewController : UIViewController { UIActivityIndicatorView *throbber; UIButton *start; UIButton *stop; retain) IBOutlet UIActivityIndicatorView retain) IBOutlet UIButton retain) IBOutlet UIButton *stop; -

93 ActivityIndicatorViewController.m #import throbber, start, stop; - (IBAction)update:(id)sender { if(self.start == sender) { self.throbber.startanimating; } else if(self.stop == sender) { self.throbber.stopanimating; } } /*... Xcode provided methods...

94 Images

95 UIImageView UIImageViews are used to show an image or a sequence of animated images on screen

96 UIImageView Attributes The only real option is the image Assuming you ve imported an image into your project, you should be able to select from the list You will also want to be sure to resize your view to be the same size as your images if you do not want it to get cropped

97 Common Methods/Properties If you want to do animation, you can put together an array of UIImages to cycle through with the following copy) NSArray *animationimages; Use these methods to start/stop animation... - (void)startanimating; - (void)stopanimating; You can also check the animation status using... - (BOOL)isAnimating; Or, you can set the image in code using the image retain) UIImage *image;

98 Other Methods/Properties There are groups of methods/properties for... Initializing an image view (in code) Setting the images (including highlighted state) Various animation methods Getter/Setter attribute methods

99 Images Images used in my example... link.png megaman0.png megaman1.png megaman2.png megaman3.png

100 ImagesViewController.h #import ImagesViewController : UIViewController { UIImageView *megaman; UISwitch *animate; retain) IBOutlet UIImageView retain) IBOutlet UISwitch *animate; -

101 ImagesViewController.m #import megaman, animate; - (IBAction)change { if(self.animate.ison) { self.megaman.startanimating; } else { self.megaman.stopanimating; } } - (void)viewdidload { [super viewdidload]; UIImage *mega1 = [UIImage imagenamed:@"megaman1.png"]; UIImage *mega2 = [UIImage imagenamed:@"megaman2.png"]; UIImage *mega3 = [UIImage imagenamed:@"megaman3.png"]; self.megaman.animationduration =.5; self.megaman.animationimages = [NSArray arraywithobjects:mega1, mega2, mega3, nil]; } /*... Xcode provided methods...

102 Views

103 UIView UIViews are simply containers that can contain other widgets (also views) Can be used to group elements

104 UIView Attributes You can set a lot of attributes on UIViews Scaling behavior Transparency Background color Etc.

105 Methods/Properties Views have a lot of methods/properties for manipulating them in code... Initializing the view Modifying the bounds, center, transforms, etc. Managing the view hierarchy Converting points between views Displaying views Animating views Handling events and changes

106 ViewsViewController.h #import ViewsViewController : UIViewController { UISlider *red; UISlider *green; UISlider *blue; UIView *color; UISwitch *visible; UIView *subview; retain) IBOutlet UISlider retain) IBOutlet UISlider retain) IBOutlet UISlider retain) IBOutlet UIView retain) IBOutlet UISwitch retain) IBOutlet UIView *subview; - (IBAction)updateColor; -

107 ViewsViewController.m #import red, green, blue, visible, subview; - (IBAction)updateColor { self.color.backgroundcolor = [UIColor colorwithred:red.value green:green.value blue:blue.value alpha:1.0]; } - (IBAction)toggleView { [self.subview sethidden:!self.visible.ison]; } /*... Xcode provided methods...

108 Additional Resources The UICatalog sample code provided by Apple contains most of the widgets shown here UICatalog/ The iphone Human Interface Guidelines (HIG) document also provides some guidance on widget selection UserExperience/Conceptual/MobileHIG/

109 For Next Class Read at Table View Programming Guide for iphone OS UserExperience/Conceptual/TableView_iPhone/

View Concepts. iphone Application Programming Lecture 4: User Interface Design. SDK provide many types of Views to show your content

View Concepts. iphone Application Programming Lecture 4: User Interface Design. SDK provide many types of Views to show your content View Concepts iphone Application Programming Lecture 4: User Interface Design SDK provide many types of Views to show your content At run-time Views are organized as a tree Chat Wacharamanotham Media Computing

More information

InterfaceBuilder and user interfaces

InterfaceBuilder and user interfaces ES3 Lab 2 InterfaceBuilder and user interfaces This lab InterfaceBuilder Creating components Linking them to your code Adding buttons, labels, sliders UITableView Creating a tableview Customizing cells

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

View Concepts. iphone Application Programming Lecture 4: User Interface Design. SDK provide many types of Views to show your content

View Concepts. iphone Application Programming Lecture 4: User Interface Design. SDK provide many types of Views to show your content View Concepts iphone Application Programming Lecture 4: User Interface Design SDK provide many types of Views to show your content At run-time Views are organized as a tree Chat Wacharamanotham Media Computing

More information

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

CSC 581: Mobile App Development Spring 2018

CSC 581: Mobile App Development Spring 2018 CSC 581: Mobile App Development Spring 2018 Unit 2: Introduciton to the UIKit UIKit, UIViews UIControl subclasses 1 UIKit the UIKit is a code framework for building mobile apps the foundational class for

More information

iphone Application Programming Lecture 5: View Programming

iphone Application Programming Lecture 5: View Programming Lecture 5: View Programming Nur Al-huda Hamdan RWTH Aachen University Winter Semester 2015/2016 http://hci.rwth-aachen.de/iphone Name the UI Elements In the Screen 2 View Programming 3 View Programming

More information

Types of Views. View category Purpose Examples of views. Display a particular type of content, such as an image or text.

Types of Views. View category Purpose Examples of views. Display a particular type of content, such as an image or text. ios UI Components Sisoft Technologies Pvt Ltd SRC E7, Shipra Riviera Bazar, Gyan Khand-3, Indirapuram, Ghaziabad Website: www.sisoft.in Email:info@sisoft.in Phone: +91-9999-283-283 Types of Views View

More information

IOS - TEXT FIELD. Use of Text Field. Important Properties of Text Field. Updating Properties in xib

IOS - TEXT FIELD. Use of Text Field. Important Properties of Text Field. Updating Properties in xib IOS - TEXT FIELD http://www.tutorialspoint.com/ios/ios_ui_elements_text_field.htm Copyright tutorialspoint.com Use of Text Field A text field is a UI element that enables the app to get user input. A UITextfield

More information

A Vertical Slider for iphone

A Vertical Slider for iphone A Vertical Slider for iphone The UISlider control offers a way to continuously get values from the user within a range of set values. In the Interface Builder library of controls, there is only a horizontal

More information

Intro to Native ios Development. Dave Koziol Arbormoon Software, Inc.

Intro to Native ios Development. Dave Koziol Arbormoon Software, Inc. Intro to Native ios Development Dave Koziol Arbormoon Software, Inc. About Me Long time Apple Developer (20 WWDCs) Organizer Ann Arbor CocoaHeads President & ios Developer at Arbormoon Software Inc. Wunder

More information

Advanced ios. CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 20 11/01/2012

Advanced ios. CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 20 11/01/2012 Advanced ios CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 20 11/01/2012 1 Goals of the Lecture Present a few additional topics and concepts related to ios programming persistence serialization

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

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

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

Using Advanced Interface Objects and Views

Using Advanced Interface Objects and Views HOUR 9 Using Advanced Interface Objects and Views What You ll Learn This Hour:. How to use segmented controls (a.k.a. button bars). Ways of inputting Boolean values via switches. How to include web content

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

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

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

iphone Application Tutorial

iphone Application Tutorial iphone Application Tutorial 2008-06-09 Apple Inc. 2008 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any

More information

View Controller Lifecycle

View Controller Lifecycle View Controller Lifecycle View Controllers have a Lifecycle A sequence of messages is sent to them as they progress through it Why does this matter? You very commonly override these methods to do certain

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

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

Developing Applications for ios

Developing Applications for ios Developing Applications for ios Lecture 7: View Controller Lifecycle and UIKit Radu Ionescu raducu.ionescu@gmail.com Faculty of Mathematics and Computer Science University of Bucharest Content View Controller

More information

AVAudioRecorder & System Sound Services

AVAudioRecorder & System Sound Services AVAudioRecorder & System Sound Services Dept. of Multimedia Science, Sookmyung Women s University. prof. JongWoo Lee Index AVAudioRecorder? - (AudioRecorder) System Sound Service? - (SysSound) AVAudioRecorder

More information

Objective-C Primer. iphone Programmer s Association. Lorenzo Swank September 10, 2008

Objective-C Primer. iphone Programmer s Association. Lorenzo Swank September 10, 2008 Objective-C Primer iphone Programmer s Association Lorenzo Swank September 10, 2008 Disclaimer Content was blatantly and unapologetically stolen from the WWDC 2007 Fundamentals of Cocoa session, as well

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

} override func didreceivememorywarning() { 26 super.didreceivememorywarning() 27 } 28 } Pause Stop

} override func didreceivememorywarning() { 26 super.didreceivememorywarning() 27 } 28 } Pause Stop Chapter 30 30.1 App App MP3 Don t Download This Song [1] Finder MP3 Xcode UI 1 import UIKit 2 import AVFoundation 3 4 class ViewController: UIViewController { 5 6 var player: AVAudioPlayer? 7 8 override

More information

Your First iphone OS Application

Your First iphone OS Application Your First iphone OS Application General 2010-03-15 Apple Inc. 2010 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form

More information

Your First iphone Application

Your First iphone Application Your First iphone Application General 2009-01-06 Apple Inc. 2009 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form

More information

Xcode 4 Cookbook. Steven F. Daniel. Chapter No. 2 "User Interfaces Creating the UI"

Xcode 4 Cookbook. Steven F. Daniel. Chapter No. 2 User Interfaces Creating the UI Xcode 4 Cookbook Steven F. Daniel Chapter No. 2 "User Interfaces Creating the UI" In this package, you will find: A Biography of the author of the book A preview chapter from the book, Chapter NO.2 "User

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

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

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

Announcements. Today s Topics

Announcements. Today s Topics Announcements Lab 2 is due tonight by 11:59 PM Late policy is 10% of lab total per day late So -7.5 points per day late for lab 2 Labs 3 and 4 are posted on the course website Extensible Networking Platform

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

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

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

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

User Experience: Windows & Views

User Experience: Windows & Views View Programming Guide for ios User Experience: Windows & Views 2010-07-07 Apple Inc. 2010 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or

More information

Numbers Basics Website:

Numbers Basics Website: Website: http://etc.usf.edu/te/ Numbers is Apple's new spreadsheet application. It is installed as part of the iwork suite, which also includes the word processing program Pages and the presentation program

More information

ITP 342 Mobile App Dev. Interface Components

ITP 342 Mobile App Dev. Interface Components ITP 342 Mobile App Dev Interface Components Human Interface Guidelines ios Human Interface Guidelines (HIG) https://developer.apple.com/ library/ios/documentation/us erexperience/conceptual/m obilehig/index.html

More information

Intro to Development for ios. Dave Koziol Arbormoon Software, Inc.

Intro to Development for ios. Dave Koziol Arbormoon Software, Inc. Intro to Development for ios Dave Koziol Arbormoon Software, Inc. About Me Long time Apple Developer (21 WWDCs) Organizer Ann Arbor CocoaHeads President & ios Developer at Arbormoon Software Inc. Multiple

More information

View Controllers CPRE 388

View Controllers CPRE 388 View Controllers CPRE 388 View Controllers Manage views in model view controller design template. Many types: custom view controller; container view controller; modal view controller. Custom View controllers

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

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

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

Stanford CS193p. Developing Applications for iphone 4, ipod Touch, & ipad Fall Stanford CS193p Fall 2010

Stanford CS193p. Developing Applications for iphone 4, ipod Touch, & ipad Fall Stanford CS193p Fall 2010 Developing Applications for iphone 4, ipod Touch, & ipad Today One last Objective-C topic: Protocols Using protocols to define/implement/use a data source and/or delegate Views UIView and UIWindow classes

More information

Stanford CS193p. Developing Applications for ios. Spring CS193p. Spring 2016

Stanford CS193p. Developing Applications for ios. Spring CS193p. Spring 2016 Stanford Developing Applications for ios Today Views Custom Drawing Demo FaceView Views A view (i.e. UIView subclass) represents a rectangular area Defines a coordinate space For drawing And for handling

More information

epicurious Anatomy of an ios app Robert Tolar Haining June 25, 2010 ConvergeSE

epicurious Anatomy of an ios app Robert Tolar Haining June 25, 2010 ConvergeSE epicurious Anatomy of an ios app Robert Tolar Haining June 25, 2010 ConvergeSE + = Prototype iphone ipad Why iphone apps Simplicity Control Speed Revenue Epicurious Defined as a Recipe Utility Cookbook

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

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 Views A view (i.e. UIView subclass) represents a rectangular area Defines a coordinate space Draws and handles events in that rectangle Hierarchical A view has only one

More information

User Experience: Windows & Views

User Experience: Windows & Views View Controller Programming Guide for ios User Experience: Windows & Views 2011-01-07 Apple Inc. 2011 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval

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

ios Application Development Hello World App Rubric

ios Application Development Hello World App Rubric ios Application Development Hello World App Rubric 1 HelloWorld App Rubric Unsatisfactory Needs Revision Proficient Exemplary There s indication that you (student) struggle to grasp concepts. Although

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

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

CS193p Spring 2010 Monday, April 12, 2010

CS193p Spring 2010 Monday, April 12, 2010 CS193p Spring 2010 Announcements Axess! Make sure your grading option matches what you were approved for Sonali s Office Hours Changed Friday 11am to 1pm Thursday 10am to noon Gates B26B Any questions

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

Stanford CS193p. Developing Applications for ios. Winter CS193p! Winter 2015

Stanford CS193p. Developing Applications for ios. Winter CS193p! Winter 2015 Stanford CS193p Developing Applications for ios Today UITextField Bonus Topic! Table View A UIView for displaying long lists or tables of data UITextField Like UILabel, but editable Typing things in on

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

Mobile Development - Lab 2

Mobile Development - Lab 2 Mobile Development - Lab 2 Objectives Illustrate the delegation mechanism through examples Use a simple Web service Show how to simply make a hybrid app Display data with a grid layout Delegation pattern

More information

AVAudioPlayer. avtouch Application

AVAudioPlayer. avtouch Application AVAudioPlayer avtouch Application iphone Application Index 1. iphone Application 1) iphone Application 2) iphone Application Main Method 3) iphone Application nib(.xib) 2. avtouch Application 1) avtouch

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

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

Stanford CS193p. Developing Applications for ios. Winter CS193p. Winter 2017

Stanford CS193p. Developing Applications for ios. Winter CS193p. Winter 2017 Stanford Developing Applications for ios Today Views Custom Drawing Demo FaceView Views A view (i.e. UIView subclass) represents a rectangular area Defines a coordinate space For drawing And for handling

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

Why Model-View-Controller?

Why Model-View-Controller? View Controllers Why Model-View-Controller? Ever used the word spaghetti to describe code? Clear responsibilities make things easier to maintain Avoid having one monster class that does everything Why

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

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

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

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

Enterprise Architect. User Guide Series. Wireframe Models

Enterprise Architect. User Guide Series. Wireframe Models Enterprise Architect User Guide Series Wireframe Models What Wireframe Modeling tool to use? Sparx Systems Enterprise Architect provides patterns and icons to help create Wireframe models of application

More information

Using Microsoft Word. Working With Objects

Using Microsoft Word. Working With Objects Using Microsoft Word Many Word documents will require elements that were created in programs other than Word, such as the picture to the right. Nontext elements in a document are referred to as Objects

More information

Apple Development Technology Workshops

Apple Development Technology Workshops Apple Development Technology Workshops Workshop 10 Table Views Building iphone Apps. Pt 2 Fall 2008 Hafez Rouzati Fall 2008 Zach Pousman Last Week UIViewControllers Organizing Content & Building iphone

More information

Modern Auto Layout. Building Adaptive Layouts For ios. Keith Harrison. Web: useyourloaf.com Version: 1.0 ( ) Copyright 2018 Keith Harrison

Modern Auto Layout. Building Adaptive Layouts For ios. Keith Harrison. Web: useyourloaf.com Version: 1.0 ( ) Copyright 2018 Keith Harrison Building Adaptive Layouts For ios Keith Harrison Web: useyourloaf.com Version: 1.0 (2018-10-01) Copyright 2018 Keith Harrison Contents 1 Introduction 1 Why Learn Auto Layout?........................ 1

More information

ios Mobile Development

ios Mobile Development ios Mobile Development Today UITextView Scrollable, editable/selectable view of a mutable attributed string. View Controller Lifecycle Finding out what s happening as a VC is created, hooked up to the

More information

CS193P - Lecture 8. iphone Application Development. Scroll Views & Table Views

CS193P - Lecture 8. iphone Application Development. Scroll Views & Table Views CS193P - Lecture 8 iphone Application Development Scroll Views & Table Views Announcements Presence 1 due tomorrow (4/28)! Questions? Presence 2 due next Tuesday (5/5) Announcements Enrolled students who

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

Mobile Development Lab 3

Mobile Development Lab 3 Mobile Development Lab 3 Objectives Illustrate closures through examples Have fun with maps, location and geolocation Have fun with animations Closures implemented in Swift Closures are self-contained

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

Adopting Advanced Features of the New UI

Adopting Advanced Features of the New UI Frameworks #WWDC14 Adopting Advanced Features of the New UI Session 220 Chris Dreessen AppKit Software Engineer! Corbin Dunn AppKit Software Engineer 2014 Apple Inc. All rights reserved. Redistribution

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

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

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

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

UI Design and Storyboarding

UI Design and Storyboarding UI Design and Storyboarding Mobile Application Development in ios School of EECS Washington State University Instructor: Larry Holder Mobile Application Development in ios 1 Outline Model-View-Controller

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

Enterprise Architect. User Guide Series. Wireframe Models. Author: Sparx Systems Date: 15/07/2016 Version: 1.0 CREATED WITH

Enterprise Architect. User Guide Series. Wireframe Models. Author: Sparx Systems Date: 15/07/2016 Version: 1.0 CREATED WITH Enterprise Architect User Guide Series Wireframe Models Author: Sparx Systems Date: 15/07/2016 Version: 1.0 CREATED WITH Table of Contents Wireframe Models 3 Android Wireframe Toolbox 4 Apple iphone/tablet

More information

Assignment II: Foundation Calculator

Assignment II: Foundation Calculator Assignment II: Foundation Calculator Objective The goal of this assignment is to extend the CalculatorBrain from last week to allow inputting variables into the expression the user is typing into the calculator.

More information

CS193E Lecture 7. Document-based Applications NSTableView Key-Value Coding

CS193E Lecture 7. Document-based Applications NSTableView Key-Value Coding CS193E Lecture 7 Document-based Applications NSTableView Key-Value Coding Agenda Questions? Review: delegates, MVC Document-based apps Table views Key Value Coding Model, View, Controller Controller Model

More information

src3/bettertextfield/bettertextfield/appdelegate.h // AppDelegate.h // BetterTextField

src3/bettertextfield/bettertextfield/appdelegate.h // AppDelegate.h // BetterTextField src3/bettertextfield/bettertextfield/appdelegate.h 1 1 1 1 AppDelegate.h BetterTextField Created by Tommy MacWilliam on 3/7/ Copyright (c) 2012 MyCompanyName. All rights reserved. #import

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

Edge Television Advertisement. -Open the 3 images of TV characters and the network logo in Photoshop. Your images must be high resolution images!

Edge Television Advertisement. -Open the 3 images of TV characters and the network logo in Photoshop. Your images must be high resolution images! -Open the 3 images of TV characters and the network logo in Photoshop. Your images must be high resolution images! -Use Layer Styles to add a White Stroke of 5 pixels to each image you cut out. This will

More information

Views. A view (i.e. UIView subclass) represents a rectangular area Defines a coordinate space

Views. A view (i.e. UIView subclass) represents a rectangular area Defines a coordinate space Views A view (i.e. UIView subclass) represents a rectangular area Defines a coordinate space Draws and handles events in that rectangle Hierarchical A view has only one superview - (UIView *)superview

More information

How to...create a Video VBOX Gauge in Inkscape. So you want to create your own gauge? How about a transparent background for those text elements?

How to...create a Video VBOX Gauge in Inkscape. So you want to create your own gauge? How about a transparent background for those text elements? BASIC GAUGE CREATION The Video VBox setup software is capable of using many different image formats for gauge backgrounds, static images, or logos, including Bitmaps, JPEGs, or PNG s. When the software

More information

Mobile Apps 2010 iphone and Android

Mobile Apps 2010 iphone and Android Mobile Apps 2010 iphone and Android March 9, 2010 Norman McEntire, Founder Servin Corporation - http://servin.com Technology Training for Technology ProfessionalsTM norman.mcentire@servin.com 1 Legal Info

More information

Learn more about Pages, Keynote & Numbers

Learn more about Pages, Keynote & Numbers Learn more about Pages, Keynote & Numbers HCPS Instructional Technology May 2012 Adapted from Apple Help Guides CHAPTER ONE: PAGES Part 1: Get to Know Pages Opening and Creating Documents Opening a Pages

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

Stanford CS193p. Developing Applications for ios. Winter CS193p! Winter 2015

Stanford CS193p. Developing Applications for ios. Winter CS193p! Winter 2015 Stanford CS193p Developing Applications for ios Today Objective-C Compatibility Bridging Property List NSUserDefaults Demo: var program in CalculatorBrain Views Custom Drawing Demo FaceView Bridging Objective-C

More information