Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos NSOpenPanel不允许打开应用程序包_Macos_Swift - Fatal编程技术网

Macos NSOpenPanel不允许打开应用程序包

Macos NSOpenPanel不允许打开应用程序包,macos,swift,Macos,Swift,我现在真的尝试了一切,但我无法让NSOpenPanel允许选择应用程序包。我需要在我的应用程序中允许用户选择应用程序包的路径。我的代码如下所示: var fileDialog:NSOpenPanel = NSOpenPanel() fileDialog.prompt = "Select App Bundle" fileDialog.canChooseDirectories = false fileDialog.canChooseFiles = false

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

      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中打开并显示内容,而不是选择路径

也许这里有人给我一个提示

谢谢
Tom

尝试将
canchooseddirectories
treatsFilePackagesAsDirectories
更改为true:

fileDialog.canChooseDirectories = true
fileDialog.treatsFilePackagesAsDirectories = true

我想我已经试过了,但显然我没有。谢谢你的提示。它似乎起作用了。