【问题标题】:Providing different shared items for each activity with UIActivityViewController使用 UIActivityViewController 为每个活动提供不同的共享项
【发布时间】:2018-09-19 00:07:19
【问题描述】:

如何使用 UIActivityViewController 为每个服务提供一组完全不同的数据?

例如:

  • MESSAGE 一张帽子的图片和文字“这是一顶帽子”
  • FACEBOOK 一个网址 - http://www.google.com 和文字“在这里找一顶帽子”
  • 通过电子邮件发送一张猫的图片和网址 lolcats.com
  • 自定义图片

【问题讨论】:

  • 我不相信你可以,除非你能以某种方式“听”到用户按下了哪个 UIActivity 按钮。

标签: ios iphone objective-c uiactivityviewcontroller


【解决方案1】:

您可以通过创建一个采用UIActivityItemSource协议并实现该方法的类来为不同的活动提供不同的数据:

-(id)activityViewController:itemForActivityType:

然后通过调用-(id)initWithActivityItems:applicationActivities:将自定义类的对象传递给activityItems数组中的UIActivityViewController

来自此方法的文档:

... 这个数组中的对象可以不是实际的数据对象,而是采用UIActivityItemSource协议的对象,比如UIActivityItemProvider对象。 ...

这是一个关于如何做到这一点的教程:https://www.albertopasca.it/whiletrue/objective-c-custom-uiactivityviewcontroller-icons-and-text/

【讨论】:

  • 教程缺失。有人知道另一个吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多