使用UIActivityViewController为每个活动提供不同的共享项

时间:2014-03-15 00:26:13

标签: ios iphone objective-c uiactivityviewcontroller

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

例如:

  • MESSAGE帽子的图像和文字"这是一顶帽子"
  • FACEBOOK一个网址 - http://www.google.com,文字"在这里找一顶帽子"
  • 通过电子邮件发送猫的图片和网址lolcats.com
  • CUSTOM SERVICE a image

1 个答案:

答案 0 :(得分:4)

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

-(id)activityViewController:itemForActivityType:

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

从此方法的文档:

  

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

以下是有关如何执行此操作的教程:https://www.albertopasca.it/whiletrue/objective-c-custom-uiactivityviewcontroller-icons-and-text/