How to know which icon is clicked in UIActivityViewController
before activityController setCompletionHandler:^(NSString *activityType, BOOL completed)
is called ?
I want to share different text for sharing with twitter and facebook.
-(IBAction)btnSharePressedFromOffersDetail:(id)sender
{
NSString *posturl= @"facebook or twitter";
UISimpleTextPrintFormatter *printData = [[UISimpleTextPrintFormatter alloc]init];
NSArray *Itemsarray=@[posturl,printData];
UIActivityViewController *activityController = [[UIActivityViewController alloc]initWithActivityItems:Itemsarray applicationActivities:nil];
[self presentViewController:activityController
animated:YES completion:nil];
[activityController setCompletionHandler:^(NSString *activityType, BOOL completed)
{
NSLog(@"Activity = %@",activityType);
NSLog(@"Completed Status = %d",completed);
if (completed)
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@""
message:@"Thanks for sharing!"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}
else
{
}
}];
}
If your goal is to use a different text for Twitter or Facebook, it's the responsability of your shared Model who implement the UIActivityItemSource protocol.
- (id) activityViewController:(UIActivityViewController *)activityViewController itemForActivityType:(NSString *)activityType
{
if([activityType isEqualToString:UIActivityTypePostToFacebook]) return @"Facebook text";
else if([activityType UIActivityTypePostToTwitter]) return @"Twitter text";
else return @"Default text";
}