深色模式 Mac OS

Dark mode Mac OS

我在发布我的申请时从 Apple 收到了这个错误。我怎么解决这个问题? 我们发现启用深色模式后,菜单栏的额外图标不可见。 我在网上找不到任何东西来定义深色模式...

我在您的代码中看到 cache 一词并进行了一些猜测:

您似乎正在加载图像,然后对其进行处理并存储处理后的图像以备后用。您需要注意一些事项:

首先,确保在制作图像时正确设置当前外观 loading/manipulation。在 drawRect: 和其他一些方法之外,您总是需要跳类似这样的舞蹈:

NSAppearance * savedAppearance = [NSAppearance currentAppearance];
[NSAppearance setCurrentAppearance:someView.effectiveAppearance];

// Do your image/color/drawing stuff.

[NSAppearance setCurrentAppearance:savedAppearance];

请注意外观是"scoped"特定视图!您可以在同一视图层次结构中有不同的外观。

您需要覆盖 NSViewviewDidChangeEffectiveAppearance 或 KVObserve 视图的 effectiveAppearance 以获得有关外观变化的通知并做出相应的反应(重新创建您的图标)。