UIActivityViewController - прикреплять URL только для определенных действий
Я пытался использовать новый UIActivityViewController, чтобы заменить все мои UIActionSheets для совместного использования, однако я 'мы столкнулись с проблемой.
У меня есть 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];
Тем не менее, я хочу показывать только URL (sharedURL) в общих листах Facebook и Twitter, а не сообщение, электронную почту или копию. Есть ли способ сделать это?