首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据选定的活动共享不同的内容- UIActivityController

根据选定的活动共享不同的内容- UIActivityController
EN

Stack Overflow用户
提问于 2017-08-10 18:52:06
回答 1查看 1.2K关注 0票数 2

目前,每当用户想要使用UIActivityController共享图像时,我都会发送一个图像和一个文本。这在电子邮件和gmail上运行得很好,但在whatsapp或Skype上就搞砸了(只发送文本)。所以我想做的是分享图片,网址和文字,如果用户选择活动,如whatsapp或Skype。这个是可能的吗?

我搜索了这个问题,发现您应该像我一样实现UIActivityItemProvider的子类并实现UIActivityItemSource的方法,但我无法获得已实现方法的回调。

我已经实现了这些方法activityViewControllerPlaceholderItem:activityViewController:itemForActivityType:,但是我没有收到回调。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-10 19:34:30

只需创建UIActivityItemProvider的子类并覆盖item属性,即可提供自定义activity items

代码语言:javascript
复制
class CustomActivityItemProvider: UIActivityItemProvider
{
    override var item: Any{
        switch self.activityType!
        {
        case UIActivityType.postToFacebook:
            return "Hello"
        default:
            return "Whatever"
        }
    }
}

使用它:

代码语言:javascript
复制
let activityItem = CustomActivityItemProvider(placeholderItem: "")
let activityViewController = UIActivityViewController(activityItems: [activityItem], applicationActivities: nil)
self.present(activityViewController, animated: true, completion: nil)

此外,您只能自定义那些由Apple公开以供开发人员使用的UIActivityType。有关UIActivityTypes,请参阅:https://developer.apple.com/documentation/uikit/uiactivitytype

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45611696

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档