我一直在嘗試使用新的UIActivityViewController來替換我所有的UIActionSheets共享,但是我遇到了問題。UIActivityViewController - 只附加一個URL的某些活動
我有5個活動,消息,電子郵件,複製,Twitter和Facebook。我已經想通了如何讓那些表現出不同的文字,通過這一個自定義UIActivityProvider子類:
- (id) activityViewController:(UIActivityViewController *)activityViewController
itemForActivityType:(NSString *)activityType
{
if ([activityType isEqualToString:UIActivityTypePostToTwitter])
return twitter;
if ([activityType isEqualToString:UIActivityTypePostToFacebook])
return facebook;
if ([activityType isEqualToString:UIActivityTypeMessage])
return urlScheme;
if ([activityType isEqualToString:UIActivityTypeMail])
return urlScheme;
if ([activityType isEqualToString:UIActivityTypeCopyToPasteboard])
return urlScheme;
return nil;
}
這在我的視圖控制器:
ActivityProvider *aProvider = [[ActivityProvider alloc] init];
aProvider.facebook = facebook;
aProvider.twitter = twitter;
aProvider.urlScheme = URL;
NSArray *Items = @[aProvider, sharedURL];
UIActivityViewController *activityVC = [[UIActivityViewController alloc]initWithActivityItems:Items applicationActivities:Nil];
activityVC.excludedActivityTypes = @[UIActivityTypePrint, UIActivityTypeAssignToContact,UIActivityTypeSaveToCameraRoll, UIActivityTypePostToWeibo];
[self presentViewController:activityVC animated:TRUE completion:nil];
不過,我只想展示Facebook和Twitter分享表中的URL(sharedURL),而不是消息,電子郵件或副本。任何方式來完成這個?