通过URL共享图像
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过URL共享图像相关的知识,希望对你有一定的参考价值。
[我正在使用json从我的WordPress网站创建Images应用,并且我正在使用swift,我想通过我的应用在社交网络上共享图片,目前我尝试了此代码,但它仅适用于图片名称,我想从图片中共享图片网址,可能吗?
这是我的代码
let myWebsite = NSURL(string: "nice")
let img: UIImage = UIImage(named:"splash")!
guard let url = myWebsite else {
print("nothing found")
return
}
let shareItems:Array = [img,url]
let activityViewController:UIActivityViewController = UIActivityViewController(activityItems: shareItems, applicationActivities: nil)
activityViewController.excludedActivityTypes = [UIActivity.ActivityType.print, UIActivity.ActivityType.postToWeibo, UIActivity.ActivityType.copyToPasteboard, UIActivity.ActivityType.addToReadingList, UIActivity.ActivityType.postToVimeo]
self!.present(activityViewController, animated: true, completion: nil)
答案
您有正确的主意,但您应将以下代码中的nice替换为网站网址,例如[http://www.google.com/
let myWebsite = NSURL(string: "nice") //replace "nice"
另一答案
如果需要下载图像然后共享,则应该单独进行操作,没有一种方法可以为您完成此操作。方法如下:
func shareImageFromUrl(_ string: String) {
guard let myUrl = URL(string: string) else {
print("Invalid url!")
return
}
URLSession.shared.dataTask(with: myUrl) { (data, _, _) in
guard let data = data,
let image = UIImage(data: data) else
{ return }
let activityViewController:UIActivityViewController = UIActivityViewController(activityItems: [image], applicationActivities: nil)
activityViewController.excludedActivityTypes = [UIActivity.ActivityType.print, UIActivity.ActivityType.postToWeibo, UIActivity.ActivityType.copyToPasteboard, UIActivity.ActivityType.addToReadingList, UIActivity.ActivityType.postToVimeo]
DispatchQueue.main.async {
self.present(activityViewController, animated: true, completion: nil)
}
}.resume()
}
以上是关于通过URL共享图像的主要内容,如果未能解决你的问题,请参考以下文章