Cocoa Mac应用程序怎么会如此不友好

Cocoa Mac应用程序怎么会如此不友好,cocoa,retina-display,appkit,Cocoa,Retina Display,Appkit,据我所知,窗户、标签。。。当它们在带有视网膜显示器的新MacBook上运行时,会自动进行视网膜识别。我拥有的大多数应用都是这样(我没有开发的第三方应用)。然而 有一个特别的应用程序(YummyFTP),在视网膜上看起来很痛苦。窗口内的每一个“事物”都是不可定义的。甚至是窗口的工具栏 在一个反例中,许多其他应用程序只是自动进行了视网膜识别(光栅图像、CoreGraphics/CoreAnimation等除外) 展示: 我没有缩放这些图像。我只是截屏、裁剪和上传 作为一名cocoa开发人员,我想

据我所知,窗户、标签。。。当它们在带有视网膜显示器的新MacBook上运行时,会自动进行视网膜识别。我拥有的大多数应用都是这样(我没有开发的第三方应用)。然而

有一个特别的应用程序(YummyFTP),在视网膜上看起来很痛苦。窗口内的每一个“事物”都是不可定义的。甚至是窗口的工具栏

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

展示:

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


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

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

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

,请确保已阅读指南。“信息窗口中提供应用程序的高分辨率功能 用户可以通过打开应用程序的信息窗口并查看“以低分辨率打开”复选框来确定应用程序是否以低分辨率运行,如图1-7所示。非Cocoa应用程序的应用程序选中此复选框且不可用(暗显)。大多数Cocoa应用程序都有此复选框,但未选中。如果应用程序存在与高分辨率相关的可用性问题,用户可以选择以放大模式运行Cocoa应用程序

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

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

如果默认情况下为您的应用选择了“以低分辨率打开”复选框,则无论该复选框是否可用(暗显),您都可以通过以下方式更改默认值:

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

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

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