我对文档窗口控制器的实例似乎是一个奇怪的问题。我有一个基于文档的应用程序,其自定义窗口控制器来自NSDocument主类的重写makeWindowControllers
方法:
- (void)makeWindowControllers
{
docWinController = [[DocumentWindowController alloc] initWithWindowNibName:@"MainDocument" owner:self];
[self addWindowController:docWinController];
}// end makeWindowControllers
主应用程序窗口包含一个NSTextView对象,文件所有者(上面的窗口控制器)中有相应的插座。我有一个通过菜单项调用的动作,应该设置文本视图textStorage对象的内容。
现在,当发件人是例如窗口中的按钮但当发件人是菜单项时不起作用时,该操作按预期工作。我希望是一个实例化问题,但令人费解的是在行动中提供以下一行:
[[[textView textStorage] mutableString] appendFormat:@"Some text...%@\n", self];
返回两个不同的窗口控制器实例ID,具体取决于发送方(接口按钮或菜单项)。在一种情况下(菜单项),NSLog吐出:
-[DocumentWindowController myAction:] [L119]: Some text...<DocumentWindowController: 0x100195870>
在另一种情况下(按钮):
-[DocumentWindowController myAction:] [L119]: Some text...<DocumentWindowController: 0x113e72120>
我做错了什么?