NSOpenPanel不允许打开应用包

时间:2015-04-06 08:26:04

标签: macos swift

我现在真的尝试了一切,但我无法让NSOpenPanel允许选择一个应用程序包。我需要在我的应用程序中使用它,让用户选择Application bundle的路径。我的代码如下所示:

      var fileDialog:NSOpenPanel = NSOpenPanel()

    fileDialog.prompt = "Select App Bundle"
    fileDialog.canChooseDirectories = false
    fileDialog.canChooseFiles = false
    fileDialog.allowedFileTypes = ["app","APP"]
    fileDialog.treatsFilePackagesAsDirectories = false

    if(fileDialog.runModal() == NSFileHandlingPanelOKButton)
    {
        bundlePath?.setValue(fileDialog.URL?.absoluteString!)
    }

其他所有内容都按预期工作,但所有应用程序包都显示为灰色且无法选择。我还尝试将treatsFilePackagesAsDirectories设置为true。然后我可以选择它们,但它们只会在NSOpenPanel中打开并显示内容而不是选择路径。

也许这里的任何人都有我的暗示?

由于 汤姆

1 个答案:

答案 0 :(得分:3)

尝试将canChooseDirectoriestreatsFilePackagesAsDirectories更改为true:

fileDialog.canChooseDirectories = true
fileDialog.treatsFilePackagesAsDirectories = true