3

据我所知,窗口、标签等在配备 Retina 显示屏的新 MacBook 上运行时会自动进行视网膜显示。我拥有的大多数应用程序都是这种情况(我没有开发的第三方应用程序)。然而...

有这个特定的应用程序(Yummy ftp),在视网膜上看起来很糟糕。窗口中的每一个“东西”都是非视网膜的。甚至窗口的工具栏。

在一个反例中,许多其他应用程序只是自动进行了视网膜处理(光栅图像、CoreGraphics/CoreAnimation 等内容除外)。

展示:

我没有缩放这些图像。我只是截屏、裁剪和上传。

美味的 FTP 非 retinified

Daisy Disk 视网膜

作为一名可可开发人员,我想知道这种不当行为的原因,以及如何避免这种行为。

4

2 回答 2

3

https://developer.apple.com/library/mac/#documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Introduction/Introduction.html,确保已阅读指南。“应用程序的高分辨率功能在信息窗口中可用 用户可以通过打开应用程序的信息窗口并查看“以低分辨率打开”复选框来了解应用程序是否以低分辨率运行,如图 1-7 所示。非 Cocoa 应用程序的应用程序选中此复选框且不可用(变暗)。大多数 Cocoa 应用程序都有此复选框可用,但未选中。如果应用程序存在与高相关的可用性问题,用户可以选择以放大模式运行 Cocoa 应用程序解析度。

图 1-7 应用信息窗口中的分辨率选项![在此处输入图像描述]

某些未针对高分辨率进行完全优化的 Cocoa 应用程序可能会默认选中该复选框并使其可用。除非用户覆盖默认设置,否则这些应用程序将以放大模式运行。如果与高分辨率相关的问题是可以容忍的,用户可能希望覆盖默认值。

如果您的应用默认选中“以低分辨率打开”复选框(无论该复选框是否可用(变暗)),您可以通过以下方式更改默认设置:

修复与高分辨率相关的所有错误NSHighResolutionCapable在应用程序的 Info.plist 中将属性设置为 YES,如图 1-8 所示。图 1-8 表示应用已准备好高分辨率的按键![在此处输入图像描述]

当用户更新到您的应用程序的修订版本时,他们将能够享受高分辨率版本。

NSHighResolutionMagnifyAllowed如果您的应用针对高分辨率进行了优化,您可以通过将密钥添加到您的应用的 Info.plist 来请求不显示“以低分辨率打开”复选框。然后,将键的值设置为 NO(布尔值)。YES(默认值)意味着复选框应该像往常一样显示。”

于 2012-12-12T06:35:12.783 回答
2

我发现了一个与 Yummy FTP 有完全相同问题的开源应用程序:

大胆

在探索了这个项目后,我意识到该应用程序是用 C++ 开发的,以实现跨平台能力,这就是为什么它不自动支持带有视网膜显示的 MacBook。弄清楚是否有可能支持视网膜显示超出了这个问题的范围。

于 2012-11-08T11:25:06.900 回答