iOS 上的图像共享表中缺少标题和内容文本

Posted

技术标签:

【中文标题】iOS 上的图像共享表中缺少标题和内容文本【英文标题】:Title and content text missing from image share sheet on iOS 【发布时间】:2015-07-12 13:20:00 【问题描述】:

向我的应用程序的共享表发送链接 (NSURL) 时,我收到一个 NSExtensionItem,其中不仅包含带有 NSURL 的附件,而且还包含输入文本的有效属性 共享表中。 (attributedTitle)

但是 - 当我使用我的分享表分享 图像 时,即使我在我的分享表中输入了文本,NSExtensionItem(其中只有 一个) 对于attributedTitleattributedContentText 没有任何值:

如果我打印出NSExtensionItem,我只会看到:

<NSExtensionItem: 0x6100000030b0> - userInfo: 
    NSExtensionItemAttachmentsKey =     (
        "<NSItemProvider: 0x61000004a110> types = (\n    \"public.jpeg\"\n)"
    );

这与我通过完全相同的机制共享 URL 时看到的情况形成了对比:

<NSExtensionItem: 0x600000007620> - userInfo: 
    NSExtensionItemAttachmentsKey =     (
        "<NSItemProvider: 0x600000245b20> types = (\n    \"public.url\"\n)"
    );
    NSExtensionItemAttributedContentTextKey = <7b5c7274 66315c61 6e73695c 616e7369 63706731 3235320a 7b5c666f 6e747462 6c5c6630 5c667377 6973735c 66636861 72736574 30204865 6c766574 6963613b 7d0a7b5c 636f6c6f 7274626c 3b5c7265 64323535 5c677265 656e3235 355c626c 75653235 353b7d0a 5c706172 645c7478 3536305c 74783131 32305c74 78313638 305c7478 32323430 5c747832 3830305c 74783333 36305c74 78333932 305c7478 34343830 5c747835 3034305c 74783536 30305c74 78363136 305c7478 36373230 5c706172 6469726e 61747572 616c5c70 61727469 67687465 6e666163 746f7230 0a0a5c66 305c6673 3234205c 63663020 4170706c 657d>;
    supportsjavascript = 1;

记下键 NSExtensionItemAttributedContentTextKey 的值。

为什么输入的文字不见了,我该怎么做才能确保它进入分享表?

【问题讨论】:

【参考方案1】:

事实证明,访问附件的 attributedTitleattributedContentText 属性并不是的方法,即使它可能适用于 URL 类型。

改为使用SLComposeServiceViewControllerself.contentText

【讨论】:

以上是关于iOS 上的图像共享表中缺少标题和内容文本的主要内容,如果未能解决你的问题,请参考以下文章

Iphone 5 中的 Facebook 共享期间缺少默认文本

AIR Mobile - 文本字段缺少蓝色三角形光标

iOS AVFoundation 导出会话缺少音频

缺少列:具有共享 PK 的一对一映射上的 id

在 iOS 中与 Instagram 上的图像共享文本

Safari 桌面 Web 共享 API 中缺少“复制”选项?