I know Apple's app and a few third party apps have a modified launch image for when a call is in progress. The typical launch image is either 320x480(full screen) or 320x460(minus status bar), however how do you have an additional launch image for 320x440(minus call in process bar)?
Does anyone know how this is done, it appears this is undocumented, however Apple's apps and some third party apps (Twitter, Facebook, Tipulator) are using a separate launch image for when a call is in progress.
Update: Adding these images from the apps. It appears like they all are cropping the image as we see with the Facebook and Twitter Logo.
There is no API, documented or otherwise, for using a different launch image when a call is in progress. What you’re seeing is the result of the developer following the directions specified in the documentation, and the OS not cropping their image as a result.
Many third-party developers opt to include a cropped 320x460 launch image (omitting the standard height 20 pixel status bar) instead of the documentation-specified 320x480 full screen image. When that happens, the OS will crop 20 pixels from the middle of the image if the status bar is in double-height mode.
Solution: Provide a full-size 320x480 image, and it will not be cropped when the status bar is double-height.
I have never seen a separate launch image for when the in-call/tethering status bar is shown, and inspecting Facebook's .ipa reveals only one launch image for iPhone.
If there is an app you think really does it, you can inspect its .ipa by renaming it to .zip, extracting, and in the Payload folder right-click the .app then go to "Show Package Contents" and look for Default.png and other name variations.
I solved the same problem I had within my App using xCode 4.2 the following way:
I had a mistake in the declaration in the p.list file, now it looks like that (iPhone App only): UILaunchImageFile launch.png I named the two files launch.png and launch@2x.png. Please note: Apples doc say that the file name extension should not be included, but with me it worked only with the file name extension.
Important: only after the launch images are shown in the summary of the project (click on the project itself in the project explorer and in tab summary, scroll down and see whether your launch images are mapped and shown correctly) I could eliminate this "bug". If the plist declaration is consistent but the images still not shown, drag and drop them into the according fields from the project explorer.
If xCode generates the two files after dropping them in the according fields newly, you are still having inconsistencies in your plist-declaration or file names. You will then see what naming scheme is expected according to the new generated file names of the same two images.
After that the launch images were shown correctly in the summary tab the problem with the cropped launch images was solved.
Last but not least ensure the correct sizes of your launch images, e.g. 320x480 and 640x960.
Good luck.
来源:https://stackoverflow.com/questions/9185023/ios-launch-image-for-when-call-is-in-progress