使用NSWindowController动画打开一个新窗口

taj*_*hal 3 macos cocoa animation objective-c

从Mac OS X 10.7开始,新NSDocument窗口以及带动画的警报窗口打开.窗户打开NSWindowControllershowWindow:方法,但是,没有得到动画.

有没有办法让这些窗口获得相同的动画?

NSA*_*ict 9

您可以定义窗口的打开方式.

在"动画"下的"界面检查器"中,您可以选择"文档窗口样式",并且应该获得相同的行为.

或者在代码中:

[self.window setAnimationBehavior:NSWindowAnimationBehaviorDocumentWindow];
Run Code Online (Sandbox Code Playgroud)

这里是您可以使用的所有行为

enum {
    NSWindowAnimationBehaviorDefault = 0,       // let AppKit infer animation behavior for this window
    NSWindowAnimationBehaviorNone = 2,          // suppress inferred animations (don't animate)

    NSWindowAnimationBehaviorDocumentWindow = 3,
    NSWindowAnimationBehaviorUtilityWindow = 4,
    NSWindowAnimationBehaviorAlertPanel = 5
};
Run Code Online (Sandbox Code Playgroud)