为所有iDevices设置1024 * 780图像
我刚开始开发一个通用iOS应用程序,我需要设置背景图片。
我不想为iPhone,iPhone-retina,iPhone5,iPhone5-retina和iPad,iPad-retina使用3〜4种不同尺寸的图像,我只想拍摄一张最高分辨率图像(比如1024 * 780),我想用它适合所有上述设备。 怎么样???
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"sfond-appz.png"]];
它并未占用较小设备的确切屏幕尺寸。 它正在缩小。
请指教!!!
如果苹果公司建议为每种显示器使用不同的图像,有一个特定的原因,那就是记忆。
随着显示器尺寸的增加,设备上的可用内存也会增加,这是因为更大的图像需要更多的内存。 即使您想在运行时调整大小(不延长),第一次打开它将占用该内存,直到您释放它为止。 占用的内存不必处理文件大小。
如果你仍然想尝试看看这个库,它可以帮助你在运行时调整图像大小(而不是拉伸)NYXImagesKit
我在App Store中的一个应用中正在做同样的事情。 在主菜单视图中,我使用UIImaveView作为背景,并在Interface Builder中将模式设置为Aspect Fit。 我使用支柱和弹簧来保持其与边缘对齐。
对于通用应用程序,您将在iPhone和iPad故事板(或.xib文件)上创建此UIImageView并使用相同的图像文件。
不过,我仍然有2倍版本的视网膜显示器。 所以,我只用两个图像来覆盖所有设备,方向和分辨率。
如果您创建适合每个设备的背景图像,它将消耗更少的内存,但显然会增加包的大小。 在我的情况下,目标是保持包的大小很小(用于蜂窝传输的时候小于50MB),并且我有剩余的内存。
链接地址: http://www.djcxy.com/p/96687.html