Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 模式表在ApplicationIDFinishLaunching中不工作?_Xcode_Macos_Cocoa_Modal Dialog_Osx Yosemite - Fatal编程技术网

Xcode 模式表在ApplicationIDFinishLaunching中不工作?

Xcode 模式表在ApplicationIDFinishLaunching中不工作?,xcode,macos,cocoa,modal-dialog,osx-yosemite,Xcode,Macos,Cocoa,Modal Dialog,Osx Yosemite,我正在尝试在应用程序启动完成时以模块方式显示一张工作表。如果我将代码放在一个通用操作中,并在应用程序启动后的某个地方执行它,它会按预期工作,并且工作表会很好地放下。如果我使用相同的代码并将其放置在ApplicationIDFinishLaunching中,该工作表将显示为一个单独的窗口(这不是我所需要的) 启动时可见选项已禁用。谢谢你的建议。我也在awakefromnib中尝试了它,结果同样不正确 编辑:使用[self-performSelector:@selector(someAction:)

我正在尝试在应用程序启动完成时以模块方式显示一张工作表。如果我将代码放在一个通用操作中,并在应用程序启动后的某个地方执行它,它会按预期工作,并且工作表会很好地放下。如果我使用相同的代码并将其放置在ApplicationIDFinishLaunching中,该工作表将显示为一个单独的窗口(这不是我所需要的)

启动时可见选项已禁用。谢谢你的建议。我也在awakefromnib中尝试了它,结果同样不正确


编辑:使用[self-performSelector:@selector(someAction:)with-Object:self-afterDelay:0.5];如果someAction的内容如上所述,则生成正确的结果。这是为什么?

NSApp的
开始页:modalForWindow:modalDelegate:didEndSelector:contextInfo:
结束页:
是。您应该改为使用实例以模态方式显示图纸窗口

NSWindow *mainWindow = [NSApp windows][0]; 
[mainWindow beginSheet:settingsWindow completionHandler: nil];

顺便问一下,如果应用程序的nib文件尚未完成加载或接收器未处于活动状态,
[NSApp keyWindow]
是否在
didFinishLaunching
中返回实例?

keyWindow方法可能会返回nil。感谢您提供的弃用提示-我没有发现这一点。
NSWindow *mainWindow = [NSApp windows][0]; 
[mainWindow beginSheet:settingsWindow completionHandler: nil];