我正在构建一个基于非文档的可可应用程序,我想表现如下:
在我当前处理表视图的app委托中,我实现了以下方法来打开一个新的Item窗口:
-(IBAction)newItem:(id)sender {
MyItemWindowController *itemController = [[MyItemWindowController alloc]initWithWindowNibName:@"MyItemWindowController"];
[itemController showWindow:self];
}
窗口显示但几乎立即消失。但是,如果我实例化一个窗口控制器,它是我的appDelegate的一个实例变量,那么窗口确实存在,但很明显,在任何给定的时间只有一个这样的窗口可以保持打开状态。
我真的很想拥有上述功能,但不想使用基于文档的架构,因为我不需要将项目作为文档保存到磁盘。
有什么建议吗?我知道我必须遗漏一些非常基本的东西,但我无法理解它!
答案 0 :(得分:4)
我猜你的窗口因为ARC而消失了(不太熟悉它,所以我不确定是不是这样),所以只要按照你所说的做,但不要将MyItemWindowController作为你的实例变量,将数组作为实例变量,在需要另一个新窗口时添加一个新的窗口控制器。