We try to keep our books accurate, but sometimes mistakes creep in. This page lists the errors submitted by our astute readers. If you've found a new error, please submit it.

The latest version of the book is P1.0, released almost 4 years ago. If you've bought a PDF of the book and would like to upgrade it to this version (for free), visit your home page.

Key: Typo Tech. Error Suggestion Not a problem Next edition

By default this page displays the errata for the latest version of the book. If you have a previous version, select it here:  

(To find out what version you have, look at the copyright page, a few pages in from the front of the book. If it says (say) 'Second Printing', then here it'll be P2.0. If there are interim PDF releases in that printing, they'll be 2.1, 2.2, and so on.)

PDF Paper Description Found in Fixed in
20

#45335: AssignmentViewController.h is not available at this point (the controller is created on page 22). This causes a build error.--David Rupp

P1.0
11-Oct-10
20
#45208: Date: Sat Oct 2 21:46:34 2010 -0500 p20 The C in MVC, connect the outlet Took a bit to figure this out. "Jump over to...more...
P1.0
03-Oct-10
36
#45285: On page 36 section 2.1 of P1.0 version of the PDF in the section just before the sentences: Save your work. Build and run. Add s...more...
P1.0
07-Oct-10
46
#45294: In section 2.5 page 46, after reading "Save all of your changes, build and run, and everything should run as before." To verify my impleme...more...
P1.0
08-Oct-10
78
#44761: In the discussion for adding the DeleteGestureRecognizer to the viewDidLoad method of Bubles5ViewController.m, you might want to remind the re...more...
B7.0
30-Aug-10
79
#44760: This is just a question of consistency. In the code for updating viewToDelete, in the condition part of the if statement, you refer to the in...more...
B7.0
30-Aug-10
135
#44775: I am not sure how consistent you want to be or if you are just showing different ways to get something done. On page 18 you talk about disapp...more...
B7.0
31-Aug-10
135
#44776: Another question about consistency. In the paragraph after the @synthesize viewForMovie; statement, you describe in great detail how to conne...more...
B7.0
31-Aug-10
137
#44922: Towards the end of the page, in the paragraph that starts with "Back from our detour, we’re now going to look at one of the most impor- tant c...more...
B7.0
07-Sep-10
141
#44777: The declaration for the getInfo: method is different in the .h file and the .m file. Even though (void) and (IBAction) are the same, I tend t...more...
B7.0
31-Aug-10
141
#44778: I know that this is really picky but up to now, all method definitions have had the opening { on the same line as the definition. The code fo...more...
B7.0
31-Aug-10
145

#44782: In the PlaylistController.h listing in the book, you might want to include the @class MoviePlayerViewController; statement.--Kim Shrier

B7.0
31-Aug-10
145
#44783: In the paragraph right before the PlaylistController.m listing, second sentence, you mention that you are going to use the player property. T...more...
B7.0
31-Aug-10
145
#44784: In the PlaylistController.h file listing in the book, you might want to include the declaration for the initializer -(id)initWithPlayer:(Movie...more...
B7.0
31-Aug-10
145
#44785: In the paragraph after the PlaylistController.m listing, first sentence, you say that you are assigning the player to a local property when ac...more...
B7.0
31-Aug-10
146
#44789: In building the items array, you use the movieURL:withFileType: method from MoviePlayerViewController and this method has not been mentioned i...more...
B7.0
31-Aug-10
147
#44787: In the second paragraph, second sentence, you added an additional indexPath: segment to the method selector. It should say, "... so we’ve sup...more...
B7.0
31-Aug-10
155
#44790: In order to avoid a compiler warning in handleTapFrom:, you need to add a cast when assigning the value to imageView. The statement should be...more...
B7.0
31-Aug-10
158
#44791: Before showing the code for viewDidLoad in MoviePlayerViewController, you should probably mention that the reader should add shoutOutTexts and...more...
B7.0
31-Aug-10
158
#44792: Also before showing the code for viewDidLoad in MoviePlayerViewController, you should probably mention that the reader should add the position...more...
B7.0
31-Aug-10
163
#44795: In the paragraph after the "Creating the View" heading, you talk about opening the movieplayer/MoviePlayer6 project however the PlaybackViewCo...more...
B7.0
31-Aug-10
166

#44797: In the first paragraph of section 8.3 you say to add a new property to PlaybackViewController.h when you are actually adding an instance variable.--Kim Shrier

B7.0
31-Aug-10
168
#44798: In the movieDurationAvailable: method, you use the playbackTimer instance variable without mentioning that you have added it to PlaybackViewCo...more...
B7.0
31-Aug-10
170
#44799: In the first paragraph, third sentence, you say that you update the selected state of the playPauseButton when the play and pause notification...more...
B7.0
01-Sep-10
173
#44805: Before the code listing for the playbackSliderMoved: method, you should tell the reader to create the BOOL slider instance variable and explai...more...
B7.0
01-Sep-10
173
#44806: Just being picky again. The initial { should be on the same line as the method definition for playbackSliderDone: if you want the coding styl...more...
B7.0
01-Sep-10
175

#44808: Although it is probably obvious, you might want to mention that the gesture recognizer code also goes into viewDidLoad:.--Kim Shrier

B7.0
01-Sep-10
176

#44809: Before the code for setControlsTimer you might want to mention that the controlsTimer instance variable should be created in PlaybackViewController.h.--Kim Shrier

B7.0
01-Sep-10
176
#44810: This may be splitting hairs again but in the last paragraph on the page you refer to the controlsTimer instance variable as a property. Since...more...
B7.0
01-Sep-10
193

#44821: In the last paragraph, second sentence, you say you are adding the externalScreen property when you are adding it as an instance variable.--Kim Shrier

B7.0
01-Sep-10
194
#44822: Since you added the line: externalScreen = (UIScreen *)[notification object]; to the screenDidConnectNotification: method, shouldn't you...more...
B7.0
01-Sep-10
195

#44825: This is just a question. Did you mean to not capitalize the b in the setbackgroundColor: method name?--Kim Shrier

B7.0
01-Sep-10
195

#44826: Before the code for the setupExternalScreen method, you should probably mention that they need to define the externalView instance variable;--Kim Shrier

B7.0
01-Sep-10
198
#44827: When looking at the code added in ExternalDisplay3/Classes/ExternalDisplayViewController.m in the viewDidLoad method, the second to last line ...more...
B7.0
02-Sep-10
198
#44828: Looking at the ExternalDisplay3/Classes/ExternalDisplayViewController.h file and the ExternalDisplayViewController.xib, I notice that you have...more...
B7.0
02-Sep-10
200
#44829: In both the code listings for the switchMovie method, you always use player as an instance variable but in the viewDidLoad method you referenc...more...
B7.0
02-Sep-10
222

#44732: URL in footer 4 is truncated off the side of the page, confirmed by clicking the link.--Matthew Robinson

B7.0
27-Aug-10
228
#44848: I have been trying the technique of copying Mood.txt or iPadBook.pdf into the Documents directory for SingleFile to fake out file syncing with...more...
B7.0
03-Sep-10
238

#44731: Weird characters "ïz ̇£" at the end of the Bibliography section, they make me wonder if the references have been corrupted.--Matthew Robinson

B7.0
27-Aug-10