我正在使用 SwiftUIShareLink来共享 JSON 文件,但我想一次共享多个文件。Image最好创建一个文件夹并共享整个文件夹,因为我也想添加s 。
我该怎么办呢?我已经创建了一个符合Transferable创建和共享 JSON 文件的自定义结构。我尝试创建一个Array符合标准的扩展Transferable,但无法使其工作。
我已经成功地利用了ShareLink需要多个项目的初始化程序。这仅适用于URL或Data项目,不适用于符合 的每个对象Transferable。
澄清一下,这是我用来共享 JSON 文件的自定义对象:
struct JSONFile {
let url: URL
}
extension JSONFile: Transferable {
static var transferRepresentation: some TransferRepresentation {
FileRepresentation(exportedContentType: .json) { jsonFile in
SentTransferredFile(jsonFile.url)
}
}
}
Run Code Online (Sandbox Code Playgroud)
我将序列化的 JSON 数据保存到 aURL并用它创建一个实例JSONFile。现在我可以这样JSONFile分享:ShareLink
ShareLink(
"Share title",
item: jsonFile,
preview: SharePreview("title.json")
)
Run Code Online (Sandbox Code Playgroud)
当我想共享多个项目时,我可以这样做:
ShareLink(
"Share …Run Code Online (Sandbox Code Playgroud) swiftui ×1