【发布时间】:2017-08-22 16:34:50
【问题描述】:
我正在尝试使用UIActivityViewController(在 iMessage、Telegram、WhatsApp 等)分享图像。
我在做:
let image = ... // an image
let activityViewController = UIActivityViewController(activityItems: [image], applicationActivities: nil)
self.present(activityViewController, animated: true, completion: nil)
但是图像被裁剪得很糟糕。我还尝试使用UIActivityItemSource 在用户共享操作之前调整图像大小,但结果会根据用户设备和图像而变化
如何在所有设备和应用上实现完美预览?有什么建议或参考吗?
这里是最终结果的示例:
第一张图片是iMessage中以Sticker共享的图片,第二张使用UIActivityViewController分享的图片
【问题讨论】:
-
你的意思是“图像被裁剪得很糟糕”?你的意思是当用户实际在另一个应用程序中检索图像时,它是错误的图像?如果是这样,您需要显示那个代码,而不是显示活动视图控制器的代码。
-
代码是我发布的。您专注于调整大小,但这只是部分实现目标的实验
-
究竟是什么问题?您已经表明它不是裁剪也不是压缩,但您确实没有详细说明问题。我一直使用 UIActivityController 共享图像,我没有任何问题。当我们无法复制任何问题时,我们中的任何人如何帮助您?
-
“你专注于调整大小,但这只是一个部分实现目标的实验”我没有专注于任何事情。我是说你没有关注问题所在。您指的这个“预览”是什么?什么是“非常糟糕的”,在哪里?
-
我添加了一个我获得的示例。使用
UIActivityViewController获得第二张图片,预览被裁剪,但是点击图片可以看到全分辨率图片
标签: ios swift uiimage uiactivityviewcontroller