在10.10跑步时,我没有运气试图让NSPopover恢复到10.9的外观。我有一个附加到用户拖动的NSView的弹出窗口。弹出必须透明,以便用户仍然可以看到其他UI元素的位置。
一切都在10.9以下工作,但现在在10.10以下,Apple的新噱头模糊,我似乎无法回到10.10的相同外观(除非像我一样,用户在系统偏好设置中启用了“降低透明度”>可访问性。我无法对最终用户强制执行首选项更改!)。
尝试过:
self.draggingPopover.appearance = NSPopoverAppearanceHUD;
self.popoverView.superview.appearance = [NSAppearance appearanceNamed:NSAppearanceNameAqua];
self.popoverView.appearance = [NSAppearance appearanceNamed:NSAppearanceNameAqua];
这些都不会对popover在屏幕上的外观产生任何影响。
在我的视图子类中的drawRect用我选择的颜色填充背景但忽略了alpha值,而popover是不透明的。
同样我可以使用self.popoverView.layer.backgroundColor = ...
,但也会忽略alpha值!