1

我即将实现一个调用默认模式共享活动视图的共享按钮。

这是我到目前为止所得到的。

NSString *textToShare = [NSString stringWithFormat:@"Looking forward to meet you at %@",[eventItemObject eventName]];;
NSURL *url = [eventItemObject eventWebsiteURL];
NSArray *activityItems = [[NSArray alloc]  initWithObjects:textToShare,url,nil];

UIActivity *activity = [[UIActivity alloc] init];
NSArray *applicationActivities = [[NSArray alloc] initWithObjects:activity, nil];
UIActivityViewController *activityVC =
[[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:applicationActivities];

[self presentViewController:activityVC animated:YES completion:nil];

当我按下共享按钮时会调用它。

挑战:

  1. 将共享选项限制为 Facebook、Twitter、邮件等(现在还显示复制到剪贴板和微博)
  2. 为每种共享方法分配自定义共享消息/字符串。(现在textToShare字符串用于所有服务)

经过一些研究,我认为这可以使用新的 SLComposeViewController(在 iOS6 中)来完成,但我不确定在哪里/如何正确调用它。感谢任何实用的建议或示例!

4

1 回答 1

6

您可以使用 activityViewController 指定不显示哪些活动setExcludedActivityTypes:。例子:

[activityVC setExcludedActivityTypes:[NSArray arrayWithObjects:
                                                     UIActivityTypeMessage,UIActivityTypeCopyToPasteboard,
                                                     UIActivityTypeAssignToContact,UIActivityTypePostToWeibo,
                                                     UIActivityTypePrint,UIActivityTypeSaveToCameraRoll,
                                                     nil]];

至于将特定内容发送到不同的活动,我花了最后一天左右的时间试图弄清楚如何做到这一点。如果/当我弄清楚时,我会更新这篇文章以包含此信息。

于 2012-11-06T00:37:36.087 回答