奇怪的错误:谢谢,但我需要控制自己的子视图


2014-11-08 17:24:46.487 Intelligent Notes[4472:303] APP-reportExceptionthanks, but I need to control my own subviews
2014-11-08 17:24:46.488 Intelligent Notes[4472:303] thanks, but I need to control my own subviews
2014-11-08 17:24:46.494 Intelligent Notes[4472:303] (
    0   CoreFoundation                      0x00007fff8742b25c __exceptionPreprocess + 172
    1   libobjc.A.dylib                     0x00007fff86b0fe75 objc_exception_throw + 43
    2   CoreFoundation                      0x00007fff8742b10c +[NSException raise:format:] + 204
    3   ViewBridge                          0x00007fff8691d9a8 -[NSRemoteView addSubview:] + 70
    4   Intelligent Notes                   0x000000010001aa2c -[Document(TextEditNSDocumentOverrides) prepareSavePanel:] + 2380

有时,当我在NSDocument的savePanel中添加一个按钮以在保存操作结束后关闭应用程序时,我会收到这个奇怪的日志。这个日志让我大吃一惊!我该如何解决?或者如何使用可可的保存面板来有一个@"不保存"按钮?

- (BOOL)prepareSavePanel:(NSSavePanel *)savePanel {
    if (self.noNeedSave) {
        NSButton * aBtn = [NSButton new];
        [aBtn setButtonType:NSMomentaryLightButton];
        [aBtn setBezelStyle:NSRoundedBezelStyle];
        [aBtn setFrame:NSMakeRect(40, 10, 100, 24)];
        [aBtn setAction:@selector(closeWindowNoSave)];
        [aBtn setTarget:self];
        [aBtn setTitle:@"Don't Save"];
        [aBtn setAlignment:NSCenterTextAlignment];
        [savePanel.contentView addSubview:aBtn];
    }
    return YES;
}

最后我找到了文档保存面板的"不保存"按钮。将操作更改为使用我的方法关闭窗口而不保存。

最新更新