This sample shows how to use a search field in a toolbar. When you start a search, a table view displaying recent searches matching the current search string is displayed in a popover.
New controller:
UIPopoverControllerDelegate
Create a navigation controller to contain the recent searches controller, and create the popover controller to contain the navigation controller.
Changing an iPhone Executable’s working directory from “Build Products directory” may cause the application not to install properly with the error message “The Info.plist for application at (null) specifies a CFBundleExecutable of (null), which does not exist.”
You may only use .png files for application icons for the device.
The iPhone SDK is designed for Intel-based Macs and is not supported on PPC-based Macs.
When running and debugging on a device, be sure to turn off Passcode lock.
Trying to debug two applications at the same time on the same device fails with a broken pipe error in the debugger console.
Core Graphics
CGFontCreateWithFontName can hang in some circumstances when using the UIAppFonts key in the Info.plist.
Interface Builder
To support external localization tools and workflows, Interface Builder 3.2.2 supports an option to save iPhone documents in an editable NIB format. Additionally, the Xcode build settings “Flatten Compiled XIB Files” and “Strip NIB Files” now apply to iPhone Interface Builder documents in the same way they apply to Mac OS X documents. By default, NIB files will be stripped when built.
iPhone OS 3.2 supports loading unstripped NIB files, but iPhone OS releases prior to 3.2 do not. If you choose to build unstripped NIB files to support a localization workflow, you should either use ibtool’s –strip command to strip NIB files after localizing, or temporarily revert the “Flatten Compiled XIB Files” and “Strip NIB Files” build settings to build NIBs compatible with previous iPhoneOS releases.
Building an iPhone application that uses UITableViewCell objects encoded in XIB files and then running that application in the simulator or on a device with a version less than 3.2 will result in a runtime exception. To workaround this, use the simulator with the 3.2 SDK.
Launch Services
The Info.plist key CFBundleIconFiles is not working properly.
UIDocumentInteractionController is not yet fully functional.
MapKit
Previously, directions URLs were handed as a single point-to-point request. In iPhone OS 3.2, it is handled as 2 sets of search queries and results, which can be run concurrently. The Maps UI for spellchecking, refinements and map pan/zoom now support concurrent searches.
MediaPlayer
If an MPMoviePlayerController object is set to full screen before calling presentMoviePlayerViewControllerAnimated:, the movie will not properly play fullscreen.
The simulator window incorrectly rotates to portrait when an MPMoviePlayerController object enters fullscreen from landscape.
The MPMoviePlayerPlaybackDidFinishNotification notification is not sent from the Done button when a movie is launched non-fullscreen and switched to fullscreen.
An MPMoviePlayerController object does not behave properly when content is programmatically changed.
Exiting fullscreen mode of an MPMoviePlayerController object’s movie does not return the movie to its view frame.
MessageUI
The Message UI framework exports class names without prefixes, which can cause namespace confusion. If you are using the Message UI framework, watch for compiler warnings about duplicate symbols. To avoid namespace issues, you can add prefixes to your own class names.