给定一个在 Mac OS X 10.7 及以上版本上运行的 Cocoa 应用:
如何在运行时最好地检查你的应用当前是否正在运行于连接有至少一个 Retina 显示器的 Mac 上?
如果检查这种情况只是很错误的想法,我完全欢迎一个合理的解释为什么(如果这些答案很好,我会点赞的)。
但我仍然想知道:)
看起来你可以只针对新款 Mac Book Pro 的 "Retina" 硬件进行检查(目前唯一具有 Retina 显示器的 Mac),但我更喜欢一种更通用/未来可靠的检查方式。
理想情况下,我想知道如何检测 Retina 显示器,而不是当前恰巧带有 Retina 显示器的特定 Mac 型号。
-[NSScreen backingScaleFactor]
,我经常看到[[NSScreen mainScreen] backingScaleFactor]
这是非常错误的!我写了一篇关于此的文章 NSView,NSCell,CALayer Draw for Retina Display。 - Micha Mazaheri