我正在尝试在Mac OSX上显示NSSavePanel(或任何“保存文件对话框”)。我正在Swift 4(或4.2?我不确定是否确切)的XCode版本9.3(9E145)中构建COCOA应用程序。

我已经尝试了一切...

像这样?

    let savePanel = NSSavePanel()
    savePanel.begin { (result) in
        if result.rawValue == NSApplication.ModalResponse.OK.rawValue {


        }
    }

这个?
    let savePanel = NSSavePanel()
    savePanel.canCreateDirectories = true
    savePanel.showsTagField = false
    savePanel.nameFieldStringValue = "result.csv"
    savePanel.level = NSWindow.Level(rawValue: Int(CGWindowLevelForKey(.modalPanelWindow)))
    savePanel.begin { (result) in
        if result.rawValue == NSApplication.ModalResponse.OK.rawValue {


        }
    }

许多其他方式...

我想念什么?谢谢!

最佳答案

您的应用是否已沙箱化? (项目>功能>应用沙箱)

如果是这样,请确保将“用户选择的文件”的“文件访问”更改为“读/写”。

当我这样做时,您的第一个摘要对我来说效果很好。

swift - 如何在MacOS中显示NSSavePanel?-LMLPHP

08-18 00:11