Reputation: 21
I have my issues with the following code. Only thing I want is that also an image is attached to the share message.
NSString *textToShare = @"I'm feeling good!";
NSURL *myWebsite = [NSURL URLWithString:@"http://www.iamgross.de"];
UIImage *bestImage = [UIImage imageNamed:@"bestIcon"];
NSArray *objectsToShare = @[bestImage, textToShare, myWebsite];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
//Here your non-main thread.
UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:objectsToShare applicationActivities:nil];
NSArray *excludeActivities = @[UIActivityTypeAirDrop,
UIActivityTypePrint,
UIActivityTypeAssignToContact,
UIActivityTypeSaveToCameraRoll,
UIActivityTypeAddToReadingList,
UIActivityTypePostToFlickr,
UIActivityTypePostToVimeo];
activityVC.excludedActivityTypes = excludeActivities;
dispatch_async(dispatch_get_main_queue(), ^{
//Here you returns to main thread.
[loading alertIsDismissed:^{
[self presentViewController:activityVC animated:YES completion:nil];
}];
});
});
Upvotes: 2
Views: 1060
Reputation: 2343
- (void)shareText:(NSString *)text andImage:(UIImage *)image andUrl:(NSURL *)url
{
NSMutableArray *sharingItems = [NSMutableArray new];
if (text) {
[sharingItems addObject:text];
}
if (image) {
[sharingItems addObject:itemImage];
}
if (url) {
[sharingItems addObject:url];
}
UIActivityViewController *activityController = [[UIActivityViewController alloc] initWithActivityItems:sharingItems applicationActivities:nil];
[activityController setValue:@"Look at what I found" forKey:@"subject"];
[self presentViewController:activityController animated:YES completion:nil];
}
Upvotes: 3