我有问题,我想用电子邮件、消息和 AirDrop 发送图像。目前只有电子邮件和消息有效,当我尝试通过 AirDrop 发送它时,设备会得到一个我无法打开的 .data 文件。我该如何解决这个问题?
@IBAction func sendItButton(_ sender: UIBarButtonItem) {
let imageShare = [ image! ]
let activityViewController = UIActivityViewController(activityItems: imageShare , applicationActivities: nil)
activityViewController.popoverPresentationController?.barButtonItem = sender
self.present(activityViewController, animated: true, completion: nil)
}
最佳答案
我今天遇到了类似的问题,如果 UIImage 源自 bundle 中的 .jpeg 图像,那么 UIActivityViewController 上似乎存在错误。我使用图像的文件 URL(而不是 UIImage)作为 activityItems,它工作正常。
private func urlForBundleFile(filename: String) -> URL? {
let components = filename.components(separatedBy: ".")
return Bundle.main.url(forResource: components[0], withExtension: components[1])
}
let imageURL = urlForBundleFile(filename: "someImage.jpeg")
let activityViewController = UIActivityViewController(activityItems: [imageURL] , applicationActivities: nil)
关于Swift 4 UIActivityViewController 使用 AirDrop 发送图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51475586/