iPhone 4 screen.width报告320 - 我还以为它更多?

时间:2011-01-28 22:28:06

标签: javascript iphone

在JavaScript中,screen.width在我上一代iPod touch上报告320。在iPhone 4上它也报告了320.我认为新的iPhone 4“视网膜”显示器更多?为什么报告320?

3 个答案:

答案 0 :(得分:2)

对于大多数用途,屏幕被视为“超高分辨率”320像素。即使字面上它有更多的像素。

(不是网页,但内容丰富:旧的视网膜前应用程序运行相同,但偷偷加载特别命名的双分辨率图像,如果找到的话。(image.png vs image@2x.png for示例。)绘图命令的工作方式就像320像素一样。)

答案 1 :(得分:0)

这只是一个假设,你可能会得到这个,因为物理像素是从用户“隐藏”的。所以320,并不意味着320像素而是320点,相对大小。在旧的iPhone上1点映射到1px,但在新的Retina屏幕上1点映射到2pixels。再一次,只是一个假设......

答案 2 :(得分:0)

获得有意义的值的最佳方法似乎是:

var dpr = Math.ceil(window.devicePixelRatio);
var actualSize = cc.size(screen.height*dpr, screen.width*dpr);