【问题标题】:iOS 13, Custom Image, title and subtitle in the presented UIActivityViewControlleriOS 13,呈现的 UIActivityViewController 中的自定义图像、标题和副标题
【发布时间】:2020-01-10 15:51:12
【问题描述】:

我想知道iOS 13中是否有任何方法可以自定义呈现的UIActivityViewController的图像、标题和副标题?

【问题讨论】:

  • 你发现了吗?我见过一些应用程序这样做,我想知道他们是如何做到的。
  • @ian 是的,我做到了,我会回答这个问题。

标签: swift ios13 uiactivityviewcontroller


【解决方案1】:

我找到了使用UIActivityItemSource的解决方案

UIActivityItemSource 有这个协议activityViewControllerLinkMetadata(_ activityViewController: UIActivityViewController) -> LPLinkMetadata?,我们可以使用它为我们的UIActivityViewController 设置图像标题和副标题

这是一个例子:

 public func activityViewControllerLinkMetadata(_ activityViewController: UIActivityViewController) -> LPLinkMetadata? {
    let metadata = LPLinkMetadata()

    metadata.title = "My title" // Preview Title

    // Set image 

        metadata.imageProvider = NSItemProvider(object: image)
        metadata.iconProvider = NSItemProvider(object: image)
        metadata.url = urlImage

   // Set URL for sharing 
        metadata.originalURL = myUrl // Add this if you want to have a url in your share message.

    return metadata
}

结果如下:我有我的自定义图像和标题。

【讨论】:

  • 仅供参考,您可以使用文件 URL 来“破解”字幕。 metadata.originalURL = URL(fileURLWithPath: "My custom subtitle")
  • 很遗憾 LPLinkMetadata 仅适用于 iOS 13+
  • 你为图像传递什么对象?对我来说,图像周围有额外的空白。
  • @SayaleePote 这是一个简单的UIImage,它工作正常,
  • 谢谢。我想出了我面临的问题。您知道为什么即使我们通过应用程序共享链接,我们也看不到“添加到阅读列表”选项吗?努力找出问题所在。
猜你喜欢
  • 2014-01-09
  • 1970-01-01
  • 1970-01-01
  • 2013-04-21
  • 2014-03-01
  • 2016-04-02
  • 1970-01-01
  • 2013-08-22
  • 2023-03-19
相关资源
最近更新 更多