Errata
The errata list is a list of errors and their corrections that were found after the product was released.
The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.
Color Key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update
Version | Location | Description | Submitted by | Date submitted |
---|---|---|---|---|
Printed, PDF | Page XXIX Last paragraph |
In page XXIX is described XCode 3,2 as IDE, but in the page 8, XCode 3.1 is cited. What`s correct? |
Josivan Pereira de Souza | Dec 29, 2010 |
Printed | Page 23 Last para |
The direction here is reversed. You need to hold the Ctrl key down and drag from the File's Owner to the label. |
Gene K | Sep 11, 2010 |
25 Missing From Exercise |
If you compile the iDecide as is you will get the following compiler error: |
Vincent Reinhardt | Aug 11, 2010 | |
Printed | Page 25 1st para |
"Just like with outlets" seems to be incorrect. You drag the opposite direction. (See errata for p. 23) Also, the code throws an exception as provided in the book; you need to connect the File's Owner to the View itself as well. |
Gene K | Sep 11, 2010 |
Printed | Page 76 |
Throughout the book, the pointer symbol (*) is sometimes next to the variable type and other time next to the variable name. While this doesn't matter to the compiler, is there a reason for this inconsistency? Does it make the code more readable to have it in certain places at certain times? I'm just wondering if there is a formatting convention I am not aware of. |
Reid Mullen | Feb 01, 2010 |
Printed | Page 79 errata for page 79 |
The errata correction listed for page 79 in the |
Anonymous | Oct 31, 2010 |
Page 79 Code snippet |
Typo in authors errata correction for this page. NSLong should be NSLog |
creativetags | Nov 04, 2010 | |
Page 79 Code snippet |
I'm not sure if this is right but works for me: |
creativetags | Nov 04, 2010 | |
Page 79 NSLog(themessage) |
NSLog(themessage) should be NSLog(@"%@", themessage") |
CreativeMobility | Nov 25, 2010 | |
Printed | Page 81 Twitter Black Magic code snippet |
When compiling the code, I get a warning at line beginning with NSData* result = ... saying "NSURLConnection may not respond to +sendSynchronousRequest:returningResponse:error |
Marc Durbach | Dec 27, 2009 |
Page 164 first main paragraph |
The error here is already raised in the "confirmed" errata list on the website, however the correction is also only partially correct. |
Peter Johnson | Sep 06, 2010 | |
Printed | Page 181 Last line of code. |
Replace the last line of code: |
Monza Lui | Mar 13, 2012 |
Printed | Page 198 3rd column |
Last question (valueForKey vs. objectForKey): In the sentence "The subtle catch is that NSDictionary usually just turns a call to valueForKey: into a call to objectForKey, and ..." |
Anonymous | Aug 02, 2010 |
Printed | Page 202 Second handwritten solution in 'Sharpen your pencil' |
Answer indicates we will stick with the 'disclosure indicator' as the detail disclosure button is 'more than we need'. |
Anonymous | Jun 01, 2010 |
Printed | Page 202 Answer to 1st "Sharpen your pencil Solution" question |
"Configuring a Table View" is outdated. Instead see "Using Table Views to Enable Common User Actions" > "Navigating hierarchical information". |
Anonymous | Aug 02, 2010 |
Printed | Page 202 Sharpen your pencil solution |
This section is very confusing. Is it the indicator or the button in answer no. 2? |
Anonymous | Aug 02, 2010 |
Printed | Page 218 Paragraph about the nib's file's owner |
This sentence doesn't make sense: "The nib doesn't actually contain the ViewController class it's setup to be wired to." |
Anonymous | Aug 03, 2010 |
Printed | Page 219 1st description text in the graphic |
The arrow with the description text "By default, fields in Objective-C are protected, so we can get to them in our subclass" points to a method (and not the field nameTextField). |
Anonymous | Aug 03, 2010 |
Page 227 graphic on the right |
The picture on the right on page 227 erroneously shows a navigation bar, which is not displayed by the app at this stage of progression (as proven by the illustration on page 229) |
Peter Johnson | Sep 06, 2010 | |
Printed | Page 231 Add this section |
There is no arrow for "Allocate the UINavigationController and pass in our AddDrinkViewController as its root view controller. It will retain the controller, since it needs to display it". This text is on a wrong position too. |
Anonymous | Aug 03, 2010 |
Printed | Page 233 |
In the end of chapter 5, we are told we can add save and cancel buttons. If one follows the directions exactly as described, one will find that some critical code is missing from the program which keeps the save and cancel buttons from showing up. |
adam.d.benson | Oct 06, 2010 |
Printed | Page 236,238 Down section of the crossword puzzle |
"2. The HIG requires some kind of DISCLOSURE element in a cell if there is more information availible." |
Anonymous | Aug 03, 2010 |
Page 251 centre right notes |
the phrase in the notes "we want the notification center to call us (the DetailViewController)" is misleading, it should be "...to call us (the AddDrinkViewController)", which is the file where the code will go. |
Peter Johnson | Sep 07, 2010 | |
Printed | Page 256 Exercise Solution AddDrinkViewController.m file |
-(void) viewWillDisappear:(BOOL) animated should call [super viewWillDisappear]; |
Neil | Aug 22, 2010 |
258 Second Code Magnet |
This code produces warning: |
Anonymous | Feb 21, 2011 | |
Page 285 last paragraph |
Relaunching the app does not display an added drink. Confirmed this by downloading your Chapter6/DrinkMixer (timestamp: 10/27/2009 9:49AM) |
Ralph Bunker | Aug 06, 2010 | |
Page 285 middle annotation and "watch it" section |
This needs updating for iphone4, as following the instructions given will not test load and saving. |
Peter Johnson | Sep 07, 2010 | |
Printed | Page 314 Step 1 |
After reading the "Watch it!" note, I upgraded from XCode 3.1 to 3.2. Then began Chapter 7. When I created the two new classes (FugitiveListViewController and CapturedListViewController) I found that two return values were expected (and undefined) in both of the .m files. As displayed below, I hard-coded return values of 1 (in both .m files) in order to get the app to run (p. 326)-- |
Richard Gardella | May 26, 2010 |
Printed | Page 324 iBountyHunterAppDelegate.m snippet |
The book suggests adding the tabcontroller.view in the applicationDidFinishLaunching: method. The Apple docs recommend using application:didFinishLaunchingWithOptions: for SDK version 3.0 and later. |
Rev_PJ | Jul 24, 2010 |
Printed | Page 327 Left hand image |
After the detail view has been added, disclosure indicators should be used if the application is to conform to Apple's HIG. |
Tony | Mar 02, 2011 |
Printed | Page 349 prior to instruction 3 |
Property declarations in iBountyHunterAppDelegate.h for managedObjectModel, managedObjectContext and persistentStoreCoordinator are missing from text. |
Darrel Plant | Apr 23, 2010 |
Printed | Page 359 |
iBountyHunter builds successfully, but Fugitives data doesn't display. I'm assuming the data is in "iBountyHunter.sqlite." I found such a file in your Ch. 7 download. So I added this into my project, but don't know where it belongs. How about an instruction somewhere on whether we need that file and where it needs to be added? |
Paul Santori | Jan 15, 2011 |
Page 359 1st paragraph |
I'm quoting Paul Santori, |
Nicholas | Feb 06, 2011 | |
Printed, PDF | Page 359 1st paragraph |
For Paul Santori and Nicholas, |
lammic | Oct 16, 2011 |
Printed | Page 399 MIssing Instructions ? |
I was expecting that the two new IBOutlets (capturedToggle and capturedDateLabel) would have been connected in Interface Builder. No mention of this step. ONce I did this then it all worked! |
BIll Allen | Feb 04, 2010 |
Printed | Page 402 Bottom right paragraph |
The instruction to connect the 'capturedDateLabel' outlet to the File's Owner is omitted. Toggling the 'capturedToggle' segmented control will NOT show the date in the 'capturedDateLabel' unless that connection is made in Interface Builder. |
Ronald Connal | May 20, 2010 |
Printed | Page 470 last statement in method |
self.capturedDateLabel.text = @"" should be located within "else" brackets. The comment about this statement is also misleading. |
Sandy B. | Sep 05, 2011 |
Printed | Page 476 top right code snippet |
In the code for the CapturedPhotoViewController.h file, we are told to add "#import <MapKit/MapKit.h>". DIrectly below that, it reads "@class Fugitive;" If one makes the change from "#import "Fugitive.h" to "@class Fugitive;" as implied the app will crash. In short, do NOT make it read "@class Fugitive;" |
adam.d.benson | Nov 18, 2010 |