My Pref Pane 为每个显示打开一个窗口,类似于 Displays PrefPane 的工作方式。当我第一次启动时,操作系统会调用我mainViewDidLoad
使用initWithWindowNibName
. 这工作正常。
然后在 中willUnselect
,我调用[window orderOut:self];
每个外部窗口并且它们正确隐藏。例如,如果用户从我的 PrefPane 切换到 Sound 或 Network PrefPane,就会发生这种情况。
当他们回到我的 PrefPane 时,我会willSelect
打电话给:
[window orderWindow:NSWindowAbove relativeTo:0];
此调用不再有效(它适用于 10.14.6 及更早版本的所有版本,并且可能适用于 10.15 的早期版本,但它肯定在 10.15.6 中损坏)。
我尝试使用其他方法来隐藏/显示窗口,包括[window setIsVisible:]
但没有任何方法可以恢复窗口。
我认为这可能与此博客讨论的内容有关:
https://www.noodlesoft.com/blog/2019/08/28/preference-panes-and-catalina/
有没有人看到这个或知道修复它?