如何使用Nib文件在UIViewController中添加两个UIImageView?

时间:2012-01-12 11:12:30

标签: ios image ipad uiimageview xib

我必须为相应的方向显示两个不同的图像。我使用Nib文件在一个UIImageView中添加了两个图像。我想在iPad方向画像中显示image1.png,并希望在方向横向模式下显示image2.png。任何人都可以建议我如何在UIViewController中添加两个UIImageView by Nib文件?请为iPad nib文件推荐任何教程。提前致谢。

2 个答案:

答案 0 :(得分:1)

您必须在视图控制器的shouldAutorotate方法中更改UIImageView的图像:

- (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"]];
}

}

我希望它对你有所帮助:)。

答案 1 :(得分:1)

只需从库中拖动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"