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.

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



Version Location Description Submitted By
Printed Page Example 12-3
Multiple locations in the example

I think that the CovertFlow example contains some memory managment errors.

In CFView implementation:

The CFView class doesn't have a dealloc method.
The cfIntLayer allocated in initWithFrame is never released.

In CovertFlowViewController implementation:

in init:
UIImage objects created in the for() loop are never released.
[image release];
should be added after
[covers addObject: image];

in dealloc:
covers are not released

Anonymous 
Printed Page 34
Last paragraph

The paragraph begins with "If you take a look at prototype for a project's…" So, minimally, there should be an article just before "prototype," ("the" or "a"). But even with that correction, I don't know what's being referred to here. How do I look at the prototype? A screenshot or simply some additional direction would be helpful.

Mike Ruiz 
Printed Page 47
Chapter: Hello World...

The "Hello World!" text will not appear. Sometimes it will flicker for a short moment when I quit the app.
Typed in the app for myself and also downloaded the code example.

It seems that it has to do with SDK 3.1.2.

Because the books foreword is from Jan 2009 I expected that a new SDK should run.

Did someone has any suggestion?

Oliver Christmann 
PDF Page 48
Example 3.5, near bottom of page

I'm still a beginner with Objective-C, so take my corrections with a grain of salt.

As published, this line causes a build error:
self.window = [ [ [ UIWindow alloc ] initWithFrame: screenBounds ] autorelease ];

I wasn't sure why 'self' would need to be specified, so I removed that. This resulted in a successful build, but only a blank screen appeared.

I think perhaps 'autorelease' is inappropriate? A manual release is done within the dealloc, after all. I changed the line to:
window = [[UIWindow alloc] initWithFrame: screenBounds];

This produces a successful build and displays the "Hello World" MainView.

timknauf 
Printed Page 64
2nd line

#impo rt "SourceReaderViewController.h"

extra space in there.

Darren Inksetter 
Printed Page 76
Chapter 3

UINavigationController *navigationController on both @interface RootViewController and CreditsViewController are unnecessary.

Giuseppe Cigala 
Printed Page 78
initWithAppDelegate Method

UIBarButtonItem action currently reads "action: @selector(back)"

Should read "action: @selector(back:)"

Anonymous 
Printed Page 204
dealloc () method

why there is no [gps release]?
Thanks

Giuseppe Cigala 
PDF Page 269
Orientation section

"Use the image’s imageOrientation property to set its
orientation: myImage.imageOrientation = UIImageOrientationUp;"

This is impossible. The imageOrientation property is read-only.

Vocaro 
PDF Page 316
2nd Paragraph of "Reading Property Lists"

In the line of the code example beginning "NSString path" it should be "NSString path*".

Adrian Burgess 
PDF Page 316
2nd Paragraph of "Reading Property Lists"

On the line of the example beginning "NSString path" it should be "NSString* path".

(I made a typo on previous submission)

Anonymous 
PDF Page 321
MinimumValue & MaximumValue

MinimumValue
A numeric field identifying the minimum value for the slider. You can define this
as either an integer type field or a real type field, depending on whether you want
values represented as integers or floating-point numbers. An example follows:
<key>MinimumValue</key>
<real>10.0</real>

MaximumValue
A numeric field identifying the minimum value for the slider. You can define this
as either an integer type field or a real type field, depending on whether you want
values represented as integers or floating-point numbers, and it should match the
type used to set the MinimumValue field.

Anonymous