我有一个按钮,单击该按钮可打开“首选项”窗口:
-(IBAction)openPreferences:(id)sender
{
if (!prefController) {
prefController = [[PreferencesController alloc] initWithWindowNibName:@"Preferences"];
[prefController showWindow:self];
}
}
但是,关闭“首选项”窗口后,再次单击该按钮不会重新打开该窗口。有人可以教我如何解决这个问题吗?谢谢xD
最佳答案
我的原始答案(通常可以解决大多数此类问题)
在Interface Builder中关闭该窗口的“关闭时释放”复选框,您应该可以。
我的答案2)
将[prefController showWindow:self];
行放在if (!prefController)
上下文的外面(即,每次调用showWindow
时都会调用openPreferences
)。
或者,更明确地说:
-(IBAction)openPreferences:(id)sender
{
if (!prefController) {
prefController = [[PreferencesController alloc] initWithWindowNibName:@"Preferences"];
}
[prefController showWindow:self];
}