我有一个包含两个自定义布局的视图,一个用于Landscape,另一个用于Portrait。这些视图对象(当前)也有两个图像,每个视图一个。
示例:一个图像具有文本组件。为了避免拉伸图像,我们制作了一个用于纵向,一个用于横向。
我要避免的是一堆if语句,用于确定显示哪个方向以及使用哪个图像。有没有办法避免所有这些额外的代码?
答案 0 :(得分:2)
排序...使用相应设置的图像名称。我的意思是你可以将它们命名为image_portrait.png和image_landscape.png,然后在willRotateToInterfaceOrientation..
方法中执行以下操作:
NSString *orientation = (UIInterfaceOrientationIsPortrait(orientation)) ? @"portrait" : @"landscape";
[imgView setImage:[UIImage imageNamed:[NSString stringWithFormat:@"image_%@",orientation]]];
我不知道你能做些什么比这更重要。当然,这看起来并不是一个很大的改进,但如果你有更多的图像,它将非常有用。
希望这有帮助。
干杯!