iOS 上的图片分享界面缺少标题和内容文本

3
当向我的应用程序的共享表单发送链接(NSURL)时,我会收到一个包含附件和NSURL的单个NSExtensionItem,该NSExtensionItem还具有在共享表单中输入的文本的有效属性(attributedTitle)。
然而-当我使用我的分享表单分享图像时,即使我在分享表单中键入了文本,NSExtensionItem(仅有一个)也不具有attributedTitleattributedContentText的任何值:
如果我打印出NSExtensionItem,我只看到:
<NSExtensionItem: 0x6100000030b0> - userInfo: {
    NSExtensionItemAttachmentsKey =     (
        "<NSItemProvider: 0x61000004a110> {types = (\n    \"public.jpeg\"\n)}"
    );
}

这与我通过完全相同的机制分享URL时看到的情况不同:

通过Safari分享工具栏发布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个回答

3
原来访问附件的attributedTitleattributedContentText属性并不是解决问题的方法,尽管对于URL类型可能有效。相反,应该使用SLComposeServiceViewControllerself.contentText属性。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接