str*_*mes 6 objective-c nsoutlineview nsview osx-yosemite nsvisualeffectview
我试图让我的NSScrollView(并因此包含NSOutlineView)使用模糊NSVisualEffectView的幕后混合效果.
我已成功制作NSVisualEffectView容器视图并将滚动视图作为子视图放置.这似乎工作正常(只要我使我的所有表格单元格,表格,nsscrollview等透明).
然而,我现在已经在"辅助功能"选项下改变了"降低透明度",突然之间,我的背后有一个黑色背景NSScrollView.我试图对视觉效果视图进行子类化以覆盖drawRect方法,以便我可以绘制自己的背景,但我刚刚学会了这是不可能的或推荐的.
如何检测"减少透明度"是否为"开启"以及如何动态地使滚动视图不透明?
我花了一些时间才找到它,但是在NSWorkspace上有一些新的方法可以用来了解OS X Yosemite的新辅助功能的首选项.-[NSWorkspace accessibilityDisplayShouldReduceTransparency]是你想要的.
通过倾听,NSWorkspaceAccessibilityDisplayOptionsDidChangeNotification您可以了解该偏好何时发生变化.请注意,您必须在正确的情况下注册该通知NSNotificationCenter,即[[NSWorkspace sharedWorkspace] notificationCenter].
| 归档时间: |
|
| 查看次数: |
1698 次 |
| 最近记录: |