我在Storyboard的视图中心有一个图像。在iphone 5上它显示全屏,但在iphone 4上(我在iphone 4上使用不同的图像 - 以编程方式设置),它在顶部显示空白区域。
如何删除iphone 4顶部的空白区域?
以下是代码:
UIImage * img;
if (IS_IPHONE_5) {
img = [UIImage imageNamed: @"page1"];
} else {
img = [UIImage imageNamed: @"ip4_page1"];
}
[self.centerImage setImage: img];
[self.centerImage setFrame: self.view.frame];
答案 0 :(得分:0)
这是因为屏幕宽高比。您可以更改显示图像的UIImageView
方式:
self.yourImage.contentMode = UIViewContentModeScaleAspectFill;
这样,图像将保持其方面的扩展。您可以尝试其他配置以获得不同的结果。 干杯
答案 1 :(得分:0)
假设图像确实填满了整个屏幕(您可以通过给它背景颜色进行测试),您需要确保填充模式正确。
self.centerImage.contentMode = UIViewContentModeScaleToFill
// or
self.centerImage.contentMode = UIViewContentModeScaleAspectFill
第一个选项会显示所有图像,因此可能会失真 第二个选项可以避免失真,但可能会切断顶部/底部或左/右边缘。
答案 2 :(得分:-1)
将UIImageView
contentMode
设置为UIViewContentModeScaleAspectFill
。
self.centerImage.contentMode = UIViewContentModeScaleAspectFill;
如果增加图片大小以填充视图无法满足您的需求,您还可以将UIImageView
的背景颜色设置为clear
。
self.centerImage.backgroundColor = [UIColor clearColor];