【问题标题】:What native resolution should I use for @2x and @3x assets?我应该为@2x 和@3x 资产使用什么原生分辨率?
【发布时间】:2020-11-28 21:17:59
【问题描述】:

我在这里有点困惑。我正在为应用程序设计一些资产,而我的目标设备使用@2x 和@3x 规模资产。但是,根据 Apple 的说法,不同分辨率的手机都使用 @3x 资源。

iPhone 12 Pro 6.7″ 1284 x 2778
iPhone 12 Pro 6.1″ 1170 x 2532
iPhone 12 6.1 英寸 1170 x 2532
iPhone 12 5.4″ 1080 x 2340
iPhone 11 Pro Max 1242 x 2688
iPhone 11 专业版 1125 x 2436
iPhone XS Max 1242 x 2688
iPhone X、XS 1125 x 2436

假设我想设计一个占据整个屏幕的背景图像。我的@3x 图像应该是什么分辨率?如果我以 iPhone X 原始分辨率设计它,iOS 是否会将其扩展到 12 Pro 6.7 之类的东西?是不是应该把原生分辨率做成 12 Pro 6.7,让 iOS 缩小到 XS?

是的,考虑到所有这些不同的原生分辨率,@3x 分辨率应该是多少?

谢谢!

【问题讨论】:

    标签: ios


    【解决方案1】:

    不要想太多!忽略您的手机列表,只考虑图片。假设您有一张 100x100 的图像。这是一个磅值 - 也就是说,您希望它显示为 100x100。那么你需要三个版本:

    • 1x - 100x100 像素
    • 2x - 200x200 像素
    • 3x - 300x300 像素

    将它们粘贴到资产目录中的正确插槽中,您就可以开始了。这就是您需要知道的全部内容!

    为什么会这样?这是因为 (1) 运行时将根据我们碰巧运行的设备的屏幕分辨率寻找正确的版本,并且 (2) 生成的 UIImage 将被标记为正确的 scale 以便正确的转换是在像素和点之间执行。例如,在 3x 分辨率的设备上,使用了 300x300 版本的图像,但 UIImage 被标记为具有scale 3,因此该图像将被视为测量 100x100 点,并且您的代码/布局仍然可以继续工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-28
      • 1970-01-01
      • 2013-05-09
      • 1970-01-01
      • 2011-02-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多