Question: My iPhone applications are getting new error messages at calling [UIImage drawInRect: ] method since the upgrade to iOS 5:
I can’t get rid of them.
Answer: I assume that you get these messages while manipulating navigation bar’s background. UINavigationBar changed a lot. Visit Apple’s web site for details.
In png or jpg files you can have a color profile embedded in the image. This enables the image to preserve its colors as displayed on one device when transferred to another device. You must manipulate your jpg or png image before using it in navigation bar since iOS 5.0 is published.
ColorSync Utility is your tool to solve this problem. ColorSync Utility ships with Mac OS X:
– Open the image from the iPhone project with ColorSync Utility.
How? Drag the image to the utility’s icon or use its Open command in the File menu.
Where is the utility? In the Applications/Utilities folder.
– Select the ColorSync profile that are available at the bottom of the window or adjust the image based on a selected profile. Do not panic. Try different options if you are not familiar with this tool.
– Save the file.
– Open Xcode. Clean your iPhone project and rebuild.
– Run your app on an iOS 5 hardware. The error message will disappear.
Links:
Subclassing UINavigationBar and setting background image under iOS 5
*** ImageIO - could not find ColorSync function 'ColorSyncProfileCopyData'