Sierra的通知中心与Yosemite和El Cap相比具有新的浅色背景色。然而,我的小部件仍然显示旧的黑暗风格,即使我使用新的SDK重建。
视图的外观设置为“Inherited(Vibrant Dark)”。将其更改为“Aqua”似乎没有效果。
是否可以将第三方小部件更改为与Apple相同?我注意到所有其他第三方小部件看起来都一样。
答案 0 :(得分:4)
您需要在今天的展开式广告NSExtensionPointVersion
中将2.0
的值设置为Info.plist
才能获得新的外观:
<key>NSExtension</key>
<dict>
<key>NSExtensionAttributes</key>
<dict>
<key>NSExtensionPointVersion</key>
<string>2.0</string>
</dict>
</dict>
我检查过的最后一个没有在任何地方记录,但是如果你使用Xcode 8创建一个新的Today扩展,它应该为你添加这个,确认它是正确的方法。 (我实际上通过检查Apple自己今天的扩展程序的内容来弄明白。)
值得一提的是,旧版本的macOS仍然会有黑暗的外观,因此如果您的扩展程序向后兼容,则需要根据背景颜色调整内容。在Today Extension的主视图控制器中,您可以检查这样的黑暗外观:
NSString *appearance = self.parentViewController.view.effectiveAppearance.name;
BOOL legacyDarkBackground = ([appearance isEqualToString:NSAppearanceNameVibrantDark]);