如何检测 Cocoa 应用程序何时从视网膜屏幕切换到非视网膜屏幕?

Ber*_*lue 3 opengl macos cocoa objective-c retina-display

我正在使用连接到辅助非视网膜显示屏的 Macbook Pro Retina 。如何检测我的应用程序何时移至非视网膜显示屏?

编辑:这是一个 OpenGL 应用程序。我正在使用-backingScaleFactorinNSScreen来检测屏幕的比例因子。我正在寻找一种方法来检测何时发生变化。

Ken*_*ses 6

NSWindow将发布NSWindowDidChangeBackingPropertiesNotification-windowDidChangeBackingProperties:如果它实现了该方法,则窗口的委托将收到。一个视图将收到-viewDidChangeBackingProperties

请参阅Apple 的OS X 高分辨率指南中的“仅在需要时处理窗口分辨率的动态变化”部分。