Errata

Print Print Icon

Submit your own errata for this product.


The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Corrected".

The following errata were submitted by our customers and approved as valid errors by the author or editor.


Color Key: Serious Technical Mistake Minor Technical Mistake Language or formatting error Typo Question



Version Location Description Submitted By Corrected
Printed Page xxviii
5th paragraph

"Even crosswords puzzles are imporant––they'll help get the concepts into your brain the way you'll see them on the PMP exam." PMP exam in an iPhone programming book?

Note from the Author or Editor:
remove "the way you'll see them on the PMP exam"

Anonymous 
Safari Books Online xxviii
3rd paragraph, last line

"it's glorious gotchas" should be "its glorious gotchas" (i.e. no apostrophe in "it's")

Note from the Author or Editor:
Change the "it's" to "its"

Anonymous 
Printed Page 61
First item in the list of Picker characteristic or method

There is an inconsistency with the quiz on page 61 and the answers on page 62. The first item in the left column on page 61 is "Directions for drawing the view for the items" In the answer key on page 62 the same item says "Directions for drawing the rectangles for the items"

Note from the Author or Editor:
Change the first item in the "Picker Characteristic" column from "Directions for drawing the rectangles" to match p. 61 and read "Directions for drawing the view for the items"

Trevor George 
Printed Page 66
In code sample

It currently has this in the code sample: (NSInteger)pickerView:(UIPickerView *)pickerViewnumberOfRowsInComponent :(NSInteger)component { if (component == 0) There needs to be a space between "pickerView" and "numberOfRowsInComponent" like this: - (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent :(NSInteger)component { if (component == 0)

Note from the Author or Editor:
There should be a space between the pickerView and numberOfRowsInComponent as described above.

Anonymous 
Printed Page 66
middle of page - middle of code snippet

the line of code that begins with: pickerViewnumberofRowsInComponent There should be a space before numberOfRows, i.e.: pickerView numberOfRowsInComponent Code will compile and run but expected result will not be achieved.

Nick Baynham 
Printed Page 81
first statement 5th row of TWITTER BLACK MAGIC

The arrow is obscuring a left [ bracket which is hard to see. I thought this was a typo but now I see there's a drawn arrow through the bracket hiding it. I had a difficult time compiling this until I realized the number of brackets didn't match up then trial and error substituted one where I thought it made sense.

Note from the Author or Editor:
Relocate the annotation "Your username and password need to go in here" so that the arrow is not passing through code.

Nick Baynham 
Printed Page 92
Inset image containing header file code.

IBOutlet UIPickerView *tweetPicker; is not indented consistently with the other declarations within the graphic.

Note from the Author or Editor:
Indent the "IBOutlet UIPickerView *tweetPicker;" line of code with the other lines of code.

Reid Mullen 
Printed Page 105
Line next to numeric 4

dictionary is misspelled as dicionary

Note from the Author or Editor:
please change the word "dicionary" to "dictionary" (approx 1/2 way down the page on the left hand side).

Donald L Smith 
Printed Page 106
middle right, handwritten text end of sentence

command on the linthat's already there. should be command on the line that's already there.

Note from the Author or Editor:
chnage "linthat's" to "line that's"

Donald L Smith 
Printed Page 110
Next to last answer, next to last sentence

release it if you ant to use it later. should be release it if you want to use it later.

Note from the Author or Editor:
chnage "ant" to "want"

Donald L Smith 
PDF Page 116
Second picture, where sendButtonTapped is declared

Not so important, but confusing on a first sight. The response, declaration and parameters are displaced form the arrows pointing to them. Ramon M. Gallart

Note from the Author or Editor:
The second code snippet needs to be re-formatted so that the arrows point directly to the reference (the IBAction code needs to be immediately next to the dash and it will all work).

ramagaes 
Printed Page 153
Ready Bake Plist

In several spots in book you refer to getting files from "http://www.headfirstlabs/iphonedev" I tried this several times -- it is wrong. The correct site should be www.headfirstlabs.com/iphone dev -- you need the .com in the addresses in the book!!!

Note from the Author or Editor:
All mentions of the website should be "http://www.headfirstlabs.com/iphonedev

tpmchugh 
Printed Page 164
Exercise Solution, first paragraph

The text is: "We need to disable both the UITextField and the two UITextViews to prevent the user from making changes. Simply click on each field and toggle the Enabled checkbox to off." The accompanying graphic has an arrow pointing to the "Editable" (not "Enabled") checkbox for a UITextView; UITextViews do not have an "Enabled" checkbox (in IB 3.2.1 (740)). UITextFields, on the other hand, have an "Enabled" checkbox but do not have an "Editable" checkbox.

Note from the Author or Editor:
Change the word "Enabled" to "Editable" for the second paragraph of the exercise solution.

Jim Matthews 
Printed Page 173
Ready Bake Code directions

The directions say to download "DrinksDirections.plst". The correct file name is "DrinksDirections.plist".

Note from the Author or Editor:
Update page 173 directions to say "DrinksDirections.plist"

Jim Matthews 
Printed Page 184
5 Down

The answer for 5 Down of this crossword should be "NSSTRING" rather than "NSSRING" (and therefore the puzzle needs another square for the missing letter, on both page 182 and page 184).

Note from the Author or Editor:
The crossword needs to be updated to change the answer to NSSTRING - so both crossword forge files will need to be updated to add a square.

Jim Matthews 
Printed Page 231
1st Paragraph (cursive callout text)

The cursive callout text refers to "DetailedDrinkViewController" when it should be "DrinkDetailViewController" …just like the DetailedDrinkViewController… should read …just like the DrinkDetailViewController… No big deal but it made me panic and go back through all the code thinking i had used the wrong name! (P.S. This is my first Head First book and I'am loving the presentation and writing style)

Note from the Author or Editor:
Change "DetailedDrinkViewController" to "DrinkDetailViewController" in the annotation at the top of the page.

Mark Rogerson 
Printed Page 256
file name

The code should be in the AddDrinkViewController.m but the title shows AddDrinkViewController.h (the small graphic shows ".m" which is correct.

Note from the Author or Editor:
change the caption text underneath the first code snippet to "Add DrinkViewController.m", not .h.

Anonymous 
Printed Page 266
last paragraph

Extraneous characters "the" (right before setObjectForKey:) in the sentence "We can set the drink on the dictionary using thesetObjectForKey:."

Note from the Author or Editor:
remove "the" at the beginning of "thesetObjectForKey:"

Jim Matthews 
PDF Page 280
End of page

The code for sorting the array of drinks must be on AddDrinkViewController.m but in the page shows the icon and name for RootViewController.m. Ramon M. Gallart Escolà

Note from the Author or Editor:
Change the icon on the code at the bottom of p. 280 to indicate AddDrinkViewController.m, not RootViewController.m

ramagaes 
Printed Page 284
various

There is some discrepancy between the usage of DrinksDirections (Page 173) and DrinkDirection (Page 172 and 284) - note the plural Drinks vs. Drink. I believe the download has two plsts under each name...

Note from the Author or Editor:
All references should be drinkdirections.plist. We'll need to update the code so that is the only plist to download.

James Bennett 
Printed Page 284
Don't forget point between 1st and 2nd code change

Don't forget to declare this in RootViewController.h, too Should be Don't forget to declare this in RootViewController.m, too The method should be added to the class not the header

Note from the Author or Editor:
Change the annotation that says "Don't forget to declare this in RootViewController.h" to "Don't forget to declare this in RootViewController.m"

Jim Stewart 
Printed Page 316
2nd paragraph

"...delete those the view controllers..." - something in that fragment is missing or extra

Note from the Author or Editor:
change to "delete those view controllers"

James Bennett 
Printed Page 336
screen shot

Note the spelling of the attribute "fugtive" (no 'i') - which should be "fugitive" (page 342). It is also messed up on page 343 of the code listing of Fugitive.m and possibly a few other places. If you use the misspelled version, you'll get "The model used to open the store is incompatible" later on...

Note from the Author or Editor:
Fugitive should be spelled "fugitive" in all locations.

James Bennett 
Printed Page 346
2nd paragraph

Second para reads: "code needs to go into viewWillAppear in FugitiveViewController.m" There is no FugitiveViewController - text should read "code needs to go into viewWillAppear in FugitiveListViewController.m" Sharpen your pencil, point 1 text: "Create an array in the FugitiveViewController called" should read "Create an array in the FugitiveListViewController called" Sharpen your pencil, point 2 heading: "Import the appropriate headers into FugitiveViewController.m." should read "Import the appropriate headers into FugitiveListViewController.m."

Note from the Author or Editor:
Change all references from "FugitiveViewController.m" to "FugitiveListViewController.m"

Mark Rogerson 
Printed Page 348
Bullet point 2 bold text

"Import the appropriate headers into FugitiveViewController.m." should be "Import the appropriate headers into FugitiveListViewController.m."

Note from the Author or Editor:
Change reference from "FugitiveViewController.m" to "FugitiveListViewController.m"

Mark Rogerson 
PDF Page 401
Bottom of the page

One of the magnets shown says 'x == 0'. Should be '== 0' (without the 'x'). Ramon M. Gallart

Note from the Author or Editor:
Change the magnet at the bottom of p. 401 to be "== 0" (remove the x and the extra close paren). The code on p. 402 is correct.

ramagaes 
Printed Page 479
2nd code block (Fugitive.m)

The code to be added to Fugitive.m is missing a leading minus sign: (CLLocationCoordinate2D) coordinate should read - (CLLocationCoordinate2D) coordinate

Note from the Author or Editor:
Add the "- " before (CLLocationCoordinate2D)

Mark Rogerson