如何让Mac应用更适合Retina屏幕

3
据我所知,当在新款带有Retina显示屏的MacBook上运行时,窗口、标签等都会自动适应Retina。这适用于大多数应用程序(第三方应用程序我没有开发)。然而...
有一个特定的应用程序(Yummy ftp),它看起来在Retina上非常糟糕。窗口内的每个“元素”都未适应Retina。甚至包括窗口的工具栏。
相反,许多其他应用程序都已自动适应了Retina(除了光栅图像、CoreGraphics/CoreAnimation等)。
展示:
我没有缩放这些图片。我只是截屏、裁剪和上传。
作为Cocoa开发者,我想知道这种不良行为的原因以及如何避免它。
2个回答

3
请确保已阅读指南:https://developer.apple.com/library/mac/#documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Introduction/Introduction.html。用户可以在应用程序的信息窗口中查看“以低分辨率打开”复选框,如图1-7所示,以了解应用程序是否以低分辨率运行。不是Cocoa应用程序的应用程序将选择此复选框并且不可用(变暗)。大多数Cocoa应用程序都有此复选框可用,但未被选择。如果应用程序与高分辨率相关的可用性问题,则用户可以选择在放大模式下运行Cocoa应用程序。
图1-7 应用程序信息窗口中的分辨率选项![输入图像说明]
一些未完全针对高分辨率进行优化的Cocoa应用程序可能会默认选择并启用复选框。除非用户覆盖默认设置,否则这些应用程序将在放大模式下运行。如果与高分辨率相关的问题可以容忍,则用户可能希望覆盖默认值。
如果“以低分辨率打开”复选框为您的应用程序默认选择 - 无论该复选框是否可用(变暗) - 您可以通过以下方式更改默认值:
修复所有与高分辨率相关的错误 在应用程序的Info.plist中将NSHighResolutionCapable属性设置为YES,如图1-8所示。 图1-8 指示应用程序准备好高分辨率的关键字![输入图像说明]
当用户更新到您的应用程序的修订版本时,他们将能够享受高分辨率版本。
如果您的应用程序已针对高分辨率进行优化,则可以通过将NSHighResolutionMagnifyAllowed键添加到应用程序的Info.plist中来请求不显示“以低分辨率打开”复选框。然后,将键的值设置为NO(布尔值)。 YES的值(默认值)表示应按常规显示该复选框。

2
我发现一个开源应用程序和Yummy FTP存在完全相同的问题: Audacity 在研究这个项目后,我意识到该应用程序是使用C++开发的,以实现跨平台能力,这就是为什么它不能自动支持MacBook的Retina显示屏。判断是否可能支持Retina显示屏不在本问题的范围内。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接