首页 > 解决方案 > UIPasteboard 多个项目不完全粘贴

问题描述

这是代码,我将文本和图像复制到 UIPasteboard

@IBAction func btnCopyDidPress(_ sender: Any) {
    let pasteboard = UIPasteboard.general
    var items: [[String: Any]] = [[kUTTypeUTF8PlainText as String: "here goes some text"]]
    if let image = UIImage(named: "some_image"), let imageData = UIImageJPEGRepresentation(image, 0.8) {
        items.append([kUTTypeJPEG as String: imageData])
    }
    pasteboard.items = items
}

当我尝试将其粘贴到 Notes 应用程序或 Gmail 应用程序时,一切正常 - 两个部分都已粘贴。例外是 Apple 的标准邮件应用程序。仅粘贴图像部分。如果我发表评论items.append([kUTTypeJPEG as String: imageData]),那么我可以看到文本部分正在粘贴到邮件应用程序新消息草稿(当然没有图像)。我尝试了几个想法(使用 PNG 表示或降低图像分辨率,在文本之前附加图像),但都失败了。

标签: ioscopy-pasteuipasteboard

解决方案


推荐阅读