NSSavePanel的AccessoryView有时会被禁用

时间:2011-10-06 21:50:24

标签: cocoa

我尝试将一个AccessoryView添加到NSSavePanel,但有时AccessoryView(它的元素)是禁用的,有时不是。希望任何人都有一个想法。

这是我的代码:

    NSWindow *window = [[NSApp delegate] window];

// Get savePath
NSSavePanel *spanel = [NSSavePanel savePanel];

__block SaveAccessoryViewController *saveAccessoryViewController = [[SaveAccessoryViewController alloc] initWithNibName:@"SaveAccessoryView" bundle:nil];

[spanel setAllowedFileTypes:[NSArray arrayWithObject:@"pdf"]];
[spanel setAccessoryView:saveAccessoryViewController.view];

[spanel beginSheetModalForWindow:window completionHandler:^(NSInteger returnCode) {
...

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,我得出的结论是它与项目的ARC(自动参考计数)设置有关。

如果您使用ARC,请确保项目和目标上的设置都正确。

在我的情况下,我在目标上启用了ARC但在项目上没有启用ARC,在项目上启用ARC(并处理产生的错误和警告)之后,现在一切正常。