все люди, указанные выше, правы в отношении двух вещей:
i.Вы не можете добавить переход к Default.png ii.Вам нужно добавить UIView (или UIImageView) для добавления перехода.
Вот пример кода для использования:
AppDelegate.h
@interface AppDelegate: .... {
...
@property (strong, nonatomic) UIImageView *splashView;
...
@end
AppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
{
// fade Default.png into next screen
self.splashView = [[UIImageView alloc] initWithFrame:
CGRectMake(0, 0, self.window.frame.size.width, self.window.frame.size.height)];
// get the right image (does not work on simulator)
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone)
self.splashView.image = [UIImage imageNamed:@"Default.png"];
else {
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
if (UIDeviceOrientationIsLandscape([[UIDevice currentDevice] orientation]))
self.splashView.image = [UIImage imageNamed:@"Default-Landscape.png"];
else
self.splashView.image = [UIImage imageNamed:@"Default-Portrait.png"];
[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications];
}
if (self.splashView) {
[self.window.rootViewController.view addSubview:self.splashView];
[self.window.rootViewController.view bringSubviewToFront:self.splashView];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.5];
[UIView setAnimationTransition:UIViewAnimationTransitionNone forView:self.window cache:YES];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(startupAnimationDone:finished:context:)];
self.splashView.alpha = 0.0;
[UIView commitAnimations];
}
return YES;
}
Комментарии
Обратите внимание, как я использовал setAnimationTransition: UIViewAnimationTransitionNone выше.Кроме того, вы можете использовать делегат для настройки (в основном удалите splashView из супер представления).