我有一个应用程序,可以让用户输入文件,处理它,然后让用户保存文件。我在保存对话框中遇到了一个小问题。我的应用程序允许用户保存的文件类型应该只是 txt 文件。但我确实允许用户使用其他类型,所以我输入true
了allowsOtherFileTypes
. 这是我的代码:
let savePanel = NSSavePanel()
savePanel.allowedFileTypes = ["txt"]
savePanel.allowsOtherFileTypes = true
savePanel.beginSheetModal(for: self.window!, completionHandler: { response in
// Save handlers here.
})
问题是,如果用户放置了除 txt 之外的另一个扩展名,我的应用程序假设会弹出一个警报,询问用户是否要对该文件使用该扩展名,但该警报会作为它自己的窗口而不是工作表弹出:
我应该添加什么以使此警报显示为保存窗口上的工作表而不是新窗口?
系统:macOS Sierra、Xcode 8.2、Swift 3