Как добавить два UIImageView в UIViewController с помощью файла Nib? - PullRequest
0 голосов
/ 12 января 2012

Я должен показать два разных изображения для соответствующих ориентаций. Я добавил два изображения в один UIImageView, используя файл Nib. Я хочу показать image1.png в ориентации iPad Портрет и хочу показать image2.png в ориентации альбомной ориентации. Может ли кто-нибудь предложить мне, как добавить два файла UIImageView по Nib в UIViewController? Пожалуйста, предложите любые учебники для iPad nib файла. Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 12 января 2012

Просто перетащите UIImageView из библиотеки и поместите в свой вид.Но если вы используете один UIViewController и одно представление, вам нужно обрабатывать изменения поворота представления изображения в коде.Самый простой способ - показать / скрыть в зависимости от ориентации.

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration{
    UIImageView *landscapeimageView = nil;
    if ( UIInterfaceOrientationIsLandscape(toInterfaceOrientation) ){
        landscapeImageView.hidden = NO;
        portretOmageView.hidden = YES;
    }
    else{
        landscapeImageView.hidden = YES;
        portretOmageView.hidden = NO;
    }
}

Вы также можете использовать только один UIImageView и изменить свойство image на требуемое изображение:

[imageView setImage:[UIImage imageNamed:@"image1.png"]];//or @"image2.png"
1 голос
/ 12 января 2012

Вы должны изменить изображение UIImageView в методе mustAutorotate контроллера представления:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

if ( (interfaceOrientation == UIInterfaceOrientationLandscapeLeft) && (interfaceOrientation == UIInterfaceOrientationLandscapeRight) ) {
    // Set image in landscape mode
    [imageView setImage:[UIImage imageNamed:@"image1.png"]];
}
else
    // Set image in portrait mode
    [imageView setImage:[UIImage imageNamed:@"image2.png"]];
}

}

Надеюсь, он вам поможет

...