UIActivityViewController:如果活动完成,如何获取

Man*_*nan 11 twitter facebook ios uiactivityviewcontroller

我正在使用UIActivityViewController,我添加了脸书,推特和邮件.在使用这些功能中的任何一个完成共享活动后,我如何获得成功回调.

任何想法都可以欣赏,在此输入图像描述

Joe*_*ply 12

Swift语法:

let avc = UIActivityViewController(activityItems: [image], applicationActivities: nil)
avc.completionWithItemsHandler = { (activity, success, items, error) in
     print(success ? "SUCCESS!" : "FAILURE")
}

self.presentViewController(avc, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)


Dha*_*ngh 8

像这样设置完成处理程序

[controller setCompletionHandler:^(NSString *act, BOOL success)
     {

         NSLog(@"act type %@",act);
         NSString *result = nil;

         if ( [act isEqualToString:UIActivityTypePostToTwitter] )  result = @"POST-SHARED-SUCCESSFULLY";
         if ( [act isEqualToString:UIActivityTypePostToFacebook] ) result = @"POST-SHARED-SUCCESSFULLY";

         if (success)
         {
             UIAlertView *av = [[UIAlertView alloc] initWithTitle:result message:nil delegate:nil cancelButtonTitle:NSLocalizedString(@"OK", nil) otherButtonTitles:nil];
             [av show];
         }
         else
         {
             UIAlertView *av = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"ERROR", nil) message:nil delegate:nil cancelButtonTitle:NSLocalizedString(@"OK", nil) otherButtonTitles:nil];
             [av show];
         }
     }];
Run Code Online (Sandbox Code Playgroud)