0

我有一个带有两个自定义布局的视图,一个用于横向,一个用于纵向。这些视图对象(当前)也有两个图像,每个视图一个。

示例:一个图像有一个文本组件。为了避免拉伸图像,我们制作了一张纵向和一张横向。

我要避免的是一堆 if 语句,它们确定显示哪个方向以及使用哪个图像。有没有办法避免所有这些额外的代码?

4

1 回答 1

2

有点...使用相应设置的图像名称。我的意思是您可以将它们命名为 image_portrait.png 和 image_landscape.png,然后在您的willRotateToInterfaceOrientation..方法中执行以下操作:

NSString *orientation = (UIInterfaceOrientationIsPortrait(orientation)) ? @"portrait" : @"landscape";
[imgView setImage:[UIImage imageNamed:[NSString stringWithFormat:@"image_%@",orientation]]];

我不知道你能做的比这更多。当然,这看起来并没有太大的改进,但是如果您有更多图像,它将非常有用。

希望这可以帮助。

干杯!

于 2012-07-10T14:58:23.593 回答