Заставка не меняет ориентацию в iPad? - PullRequest
0 голосов
/ 22 декабря 2011

Я работаю в приложении для iPad. У меня есть 4 изображения для заставки (Пейзаж вправо, влево и портрет, PortraitUpsideDown). Когда я запускаю приложение в портретном режиме, экран-заставка выглядит хорошо, но при изменении ориентации на Landscaper экран-заставка не меняет ориентацию. Можете ли вы предложить мне какие-либо идеи? Сегодня мне нужно отправить приложение. Пожалуйста, помогите мне. Заранее спасибо. Вот мой код,

 -(void) showSplash
{
    UIInterfaceOrientation orientation= [[UIApplication sharedApplication] statusBarOrientation];
    if (orientation == UIInterfaceOrientationLandscapeLeft ||
        orientation == UIInterfaceOrientationLandscapeRight)  //  UIDeviceOrientationLandscapeLeft
    {       
        NSLog(@"Splash Landscape");
        UIViewController *splash=[[UIViewController alloc] init];
        splachview=[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 1024, 768)];
        splachview.image=[UIImage imageNamed:@"Default-Landscape.png"];
        [splash.view addSubview:splachview];

        splachview.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin;
        splachview.contentMode = UIViewContentModeTop;

        [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:NO];
        [self presentModalViewController:splash animated:NO];
        [self performSelector:@selector(hideSplash) withObject:nil afterDelay:10.0];
        [splash release];
        [splachview release];
    }
    else if (orientation == UIInterfaceOrientationPortrait ||
             orientation == UIInterfaceOrientationPortraitUpsideDown) //  UIDeviceOrientationPortrait
    {
        NSLog(@"Splash Portrait");
        UIViewController *splash=[[UIViewController alloc] init];
        splachview=[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 768, 1024)];
        splachview.image=[UIImage imageNamed:@"Default-Portrait.png"];
        [splash.view addSubview:splachview];

        splachview.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin;
        splachview.contentMode = UIViewContentModeTop;

        [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:NO];
        [self presentModalViewController:splash animated:NO];
        [self performSelector:@selector(hideSplash) withObject:nil afterDelay:10.0];
        [splash release];
        [splachview release];
    }   
}

Пожалуйста, исправьте мою ошибку. Заставка не меняет своей ориентации. Спасибо.

1 Ответ

1 голос
/ 22 декабря 2011

Назовите ваши заставки как

Default-Landscape.png и Default-Landscape.png для iPad
Default.png' and По умолчанию @ 2x.png` для iPhone.

Помните, что имена файлов чувствительны к регистру, поэтому дважды проверьте их

...