我有一个按钮,单击该按钮可打开“首选项”窗口:
-(IBAction)openPreferences:(id)sender
{
if (!prefController) {
prefController = [[PreferencesController alloc] initWithWindowNibName:@"Preferences"];
[prefController showWindow:self];
}
}
但是,关闭“首选项”窗口后,再次单击该按钮不会重新打开该窗口。有人可以教我如何解决这个问题吗?谢谢xD
答案 0 :(得分:2)
我的原始答案(通常可以解决大部分此类问题)
在Interface Builder中关闭该窗口的 OFF “关闭时释放”复选框,您应该没问题。
我的回答#2)
放置[prefController showWindow:self];
上下文的if (!prefController)
行 OUTSIDE (即每次调用showWindow
openPreferences
被称为)。
或者,更清楚:
-(IBAction)openPreferences:(id)sender
{
if (!prefController) {
prefController = [[PreferencesController alloc] initWithWindowNibName:@"Preferences"];
}
[prefController showWindow:self];
}