限制社交共享选项,并为每个服务设置自定义消息



我即将实现一个共享按钮,呼叫默认模态共享活动视图。

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

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中)完成,但是我不确定正确地调用它的位置/如何正确调用。任何实用建议或例子都将不胜感激!

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

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

就向不同的活动发送特定内容而言,我花了最后一天左右试图弄清楚如何做到这一点。如果/当我弄清楚时,我将更新此帖子以包含此信息。

最新更新