在我的iPhone应用程序中,我用相机拍照,然后我想将其调整为290*390像素.我正在使用此方法调整图像大小:
UIImage *newImage = [image _imageScaledToSize:CGSizeMake(290, 390)
interpolationQuality:1];
Run Code Online (Sandbox Code Playgroud)
它工作得很好,但它是一个未记录的功能,所以我不能再使用iPhone OS4了.
那么...调整UIImage大小的最简单方法是什么?
Apple的网站称其分辨率为1080p:1920 x 1080
但是,Xcode(今天推出的8.0 GM)所需的启动屏幕是2208 x 1242.
谁是对的?

如果我们想要使用此图像覆盖所有分辨率的屏幕的全宽和半高,那么最适合图像的尺寸是:background.png,background @ 2x.png和background@3x.png iPhone肖像应用?
这就是我们现在拥有的:
Device Points Pixels Scale Physical Pixels Physical PPI Size
iPhone X 812x375 2436x1125 3x 2436x1125 458 5.8"
iPhone 6 Plus 736x414 2208x1242 3x 1920x1080 401 5.5"
iPhone 6 667x375 1334x750 2x 1334x750 326 4.7"
iPhone 5 568x320 1136x640 2x 1136x640 326 4.0"
iPhone 4 480x320 960x640 2x 960x640 326 3.5"
iPhone 3GS 480x320 480x320 1x 480x320 163 3.5"
Run Code Online (Sandbox Code Playgroud)

有人说,对于iPhone 6 Plus,对于边缘到边缘的图像(如屏幕左下边缘的横幅),他们会准备back@3x.png,宽度为1242,iPhone 6为back@2x.png,宽度750以匹配iPhone 6的屏幕尺寸,但我不认为这是一个好主意,因为1242/3 = 414和750/2 = 375所以将它们命名为@ 2x和@ 3x没有意义.然后应该有什么宽度back.png - 375或414?
图形名称使用@ 2x和@ 3x后缀,因此如果例如image@3x.png具有30x30分辨率,则逻辑上认为image@2x.png应具有20x20分辨率,image.png应为10x10.这意味着如果我们想要为每个屏幕设置清晰的全宽图像,那么我们可能应该创建back@3x.png,宽度为414*3 = …
为什么我们需要这3种特定图像类型?
如果我的应用上有一个按钮,背景图像为50像素x 50像素,为什么我需要3个版本的图像?是什么阻止了我制作一张高得多的图像,例如700x700,所以当它在任何iPhone上缩小时它不会低于设备所需的最大分辨率?
我唯一能想到的是它占用了更多的空间,但对于简单的应用程序/一个简单的按钮,它似乎不会引起任何问题.我在一些设备上尝试过,当我模拟它并执行此方法时,它们之间没有区别.然而,随着我更多地投入到应用程序和内容中,我确信这种技术背后有实质内容.