如何自定义segue动画以显示NSWindowController?

时间:2015-03-23 22:03:43

标签: objective-c cocoa osx-yosemite nswindowcontroller nsstoryboard

我正在尝试使用故事板创建首选项窗口,如WWDC 2014 Session 212 - Storyboards and Controllers on OS X中简要介绍的那样。我有一个“首选项...”菜单项,单击时应显示首选项窗口。在Interface Builder中,我将首选项菜单项的操作segue连接到首选项窗口控制器。当我为storyboard segue选择“模态”样式时,单击首选项菜单项时会显示首选项窗口,但会将其设置为视图。

我希望在没有任何动画的情况下显示首选项窗口,例如当您打开 Xcode>时会发生什么。偏好设置 Safari>选择

我尝试过以两种不同的方式创建自定义NSStoryboardSegue并覆盖perform方法:

  1. 调用destinationController的showWindow:方法(NSWindowController)。

    这不显示首选项窗口。
    实际上,窗口在所有其他窗口后面的屏幕上短暂闪烁,然后消失。

  2. 在storyboard segue的窗口中调用makeKeyAndOrderFront:方法。

    窗口开始出现,但很快就消失了。似乎窗口被动画化为视图,但窗口在动画结束时突然隐藏。

  3. 如何自定义segue以显示没有动画的窗口?

0 个答案:

没有答案