使用 PDFKit 我在我的应用程序中创建了一个 pdf 文档。我可以在预览中成功显示它,并从预览 Controller 中使用以下代码向用户显示共享操作:
@objc func shareAction(_ sender: UIBarButtonItem)
{
if let data = documentData
{
let vc = UIActivityViewController(activityItems: [data], applicationActivities: [])
present(vc, animated: true, completion: nil
}
}
documentData
包含创建的 pdf 文档。
当用户选择“保存到文件”时,文档将获得默认名称“PDF Document.pdf”,用户可以更改该名称。
如何提供不同的默认文件名?
最佳答案
不是真正的答案,而是我想出的解决方法:
与其使用 PDF 的内存复制 data
,不如将其写入应用程序的 tmp 文件夹:
var fileURL : URL?
do
{
let filename = "myfilename.pdf"
let tmpDirectory = FileManager.default.temporaryDirectory
fileURL = tmpDirectory.appendingPathComponent(filename)
try data.write(to: fileURL!)
}
catch
{
print ("Cannot write PDF: \(error)")
}
然后分享操作看起来像:
@objc func shareAction(_ sender: UIBarButtonItem)
{
if let url = fileURL
{
let vc = UIActivityViewController(activityItems: [url], applicationActivities: [])
present(vc, animated: true, completion: nil
}
}
现在,当用户选择“保存到文件”操作时,“myfilename.pdf”显示为默认文件名。
关于ios - 将 pdf 文档保存到 iOS 文件应用程序时如何指定文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58936545/