gpt4 book ai didi

ios - 44 像素的宽度是否等同于所有设备的相同物理尺寸?

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:27:04 25 4
gpt4 key购买 nike

我的工作基于 iPhone 6 的屏幕尺寸,即 1136x750 像素和 326 ppi。我更关心按钮的物理尺寸(出于某种原因)而不是它们的数字尺寸。

如果一个在 iPhone 6 上宽度为 44 像素且物理宽度为 0.2 英寸的按钮在 iPhone 6 Plus 上具有相同的物理宽度,即 401 ppi?

如果不是,这不是应该违反 Apple 的准则吗?他们最初测试的最小宽度是 44 像素,但随着 ppi 的增加,相同的宽度在物理上减小了。

这是否以某种方式调整/缩放?

编辑:我觉得自己很愚蠢,这一切都很明显。

编辑 2: 我最初担心的是 iPhone 6 在整个屏幕上总共可以有

T = 375.0/44.0 = 8 个按钮。

虽然 iPhone 6 Plus 总共可以拥有

T' = 540.0/44.0 = 12 个按钮,每个按钮在物理上更小。

解决此问题的方法是计算出 iPhone 6 Plus 按钮的调整宽度,即 w' = 44.0 px * 401 ppi/326 ppi = 54.0 像素。

因此,iPhone 6 Plus 上的每个按钮都应具有 54 像素的宽度,以具有相同的物理尺寸。

我的想法正确吗?

最佳答案

你在数学上是对的,iOS 中的点与物理尺寸无关。

physicalSize = points * scale / ppi

5.5" 44*3/401 ≈ 0.33 英寸

4.7" 44*2/326 ≈ 0.27 英寸

因此,为了保证相同的物理尺寸,您需要为每个设备手动计算它,无论如何这不是最佳做法。

从上面的公式可以得到:

points = physicalSize * ppi / scale

快速函数:

func points(fromInches inches: CGFloat) -> CGFloat {
return inches * ppi / UIScreen.main.scale
}

var ppi: CGFloat {
//return device ppi
}

检查 this关于以编程方式获取 ppi 的问题:

编辑:

我仍然建议从点数而不是物理屏幕尺寸的角度来考虑。

关于ios - 44 像素的宽度是否等同于所有设备的相同物理尺寸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40568696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com