使用* .nib文件显示模态窗口

时间:2012-05-28 13:13:00

标签: objective-c macos cocoa

我有prefs窗格应用程序,需要使用特定的nib文件显示模态窗口。

我使用方法:

[NSBundle loadNibNamed:@"___NibName___" owner:self];    

没关系,但窗口不是模态的(我可以访问prefs窗格窗口)。

我应该点什么来使这个窗口模态化(用户不应该访问prefs窗格窗口,直到当前窗口不会被关闭)。

谢谢!

2 个答案:

答案 0 :(得分:1)

以后最简单的方法和管理:创建一个新的NSWindowController,在自定义nib / xib中将此类设置为File的所有者,在nib / xib中将窗口连接到窗口,首先创建一个窗口引用你的班级的实例,然后使用

NSWindow *window = instance.window;

然后使用NSApplication的

运行它
runModalForWindow:

答案 1 :(得分:0)

如果你在iOS

如果要将其作为模态呈现,则必须使用单独的视图控制器来管理该nib文件。获得该视图控制器的实例后,请将其显示为:

 aViewControllerClasss *sampleView= [[aViewControllerClasss alloc] initWithNibName:@"___yournibname___" bundle:nil];
 //set any variables of the new view controller(such as delegate) here, before you present it. 
 [self presentModalViewController:sampleView animated:YES];
 [sampleView release];