2014-02-28 48 views
2

我一直在试图设置启动图像和第一个视图的背景图像是一个无缝转换当我将目标版本设置为iOS 7时,完全没有问题......使用资源目录图像完美转换,但是,当我将构建目标设置为iOS 6.0或6.1时,4英寸屏幕视图会将3.5英寸背景图像向上推,而3.5英寸很好。我已经做了几乎所有我能想到的我设置编程方式使用背景图片:LaunchImage和背景图像不支持3.5“,而支持iOS 6

[self.view setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"Background"]]]; 

我已经试过内IB各种自动调整大小设置调整看法,但迄今为止没有任何工作。正如我所说的,如果我将目标版本设置为iOS 7,它看起来很好,但在设置到iOS 6/6.1时不会。

我在某处读到,如果您将构建版本设置为iOS 6,则永远不会使用-h568 @ 2x图像(即使在iOS 7设备上运行),并从我发现的情况来看也是如此。如果我在Photoshop中调整.png以抵消Background-h568 @ 2x图像的差异,则不会显示该更改。如果我对Background @ 2x做同样的处理,那么这个变化也会出现在4英寸的视网膜显示器上。

我很困惑有没有办法确保4“视网膜显示器使用正确的背景图像仍然针对iOS 6?

在此先感谢,如果我不清楚任何地方,请随时询问。

编辑:不,我宁愿不支持iOS 6,但我没有选择它。 :/

+0

对不起,我在标题中错过了。它是来回的,但就目前而言,3.5英寸的显示背景是正确的,而4英寸不是。我在正文中写入正确,在标题中写错了。 – Christian

+0

尝试将BackgroundImage和启动图片大小设置为640x1136 – Srikanth

+0

@Srikanth - 刚试过。我制作了背景@ 2x 640x1136。它修复了4“屏幕问题,但随后3.5”背景被推下。我检查了3.5“和4”都加载[email protected]。背景-h568 @ 2x未被使用导致此问题。 – Christian

回答

0

好吧,我解决了它。我认为这将是一些类型的程序化解决方案,但我以另一种方式工作。

最大的问题是[email protected]从未被使用。 3.5“屏幕和4”屏幕都使用[email protected]。所以改变那个图像文件不起作用。但是,最长的时间我没有打扰检查是否正在使用Default-h586 @ 2x。最终检查后,它是,所以我最终编辑LaunchImage来匹配背景,而不是相反。我感到很傻。然而,从资产目录中没有使用4“视网膜显示图像的事实真的令人沮丧。

我已经完成了无缝转换,但我不得不牺牲垂直居中的徽标来修复它。 4“显示的标志高于我想抵消背景图像被推到的位置。嘎。问题解决了,只是不像我所希望的那样。