ios - @2x 和@3x 像素问题

标签 ios objective-c iphone autolayout

在我的应用程序中,我几乎不对 View 使用固定大小约束,而是使用百分比约束(所以我不说 View 宽度 = 100,我说容器 View 中的 View 宽度 = 100/320 ).我通过设置约束来做到这一点 this

我读了这个article

据我所知,对于 iPhone,我需要 @2x 图片用于 750 像素 屏幕尺寸和 @3x 图片用于 1242 像素 屏幕尺寸? (之前我使用 @2x 来表示 640px 的屏幕宽度,但是对于 iPhone4,5 它只会缩放图像,所以还不错)

如果为真,@3x 宽度与@2x 宽度的比率 将是 1,656 (1242/750)?如果是真的,那就奇怪了,因为我认为比例应该是 3/2 = 1.5

最佳答案

iPhone 6 Plus 使用了一个技巧来使用 3x 资源。正如您正确计算的那样,它们应该是 2x 图稿尺寸的 1.5 倍。 iOS 为 iPhone 6s 做的是创建一个 dpi 为 3x 的 Canvas 。然后按比例缩小以适合屏幕。因为像素太小,所以很难看到。

Canvas 为 1242×2208,然后向下采样为 1080×1920。您还需要考虑在“缩放”模式下屏幕可以像普通 iPhone 6 一样处理(即 375x667 点但以 3x 渲染)。这里有一个关于所有这些的非常好的指南:http://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions

关于ios - @2x 和@3x 像素问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31957702/

相关文章:

ios - 升级部署目标时 dispatch_release 编译器错误

ios - Parse 保存最终如何工作?

objective-c - XCode:为什么我的事件没有被添加到日历中?

objective-c - 有可以打开的文件吗?

iphone - 如何将 SQlite 扩展源文件链接到 iPhone 的 Xcode 中?

ios - 模拟 iPhone 5 的黑条 - Xcode

ios - Xcode 项目中的两个 swift/ios 目标有不同的可用选项

iOS慢速图像像素迭代

iphone - 保存用户默认值时出现随机 BAD ACCESS

ios - 根据屏幕大小更改 imageview、sprite、label 等的大小 iOS