iOS集成系统分享功能

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/potato512/article/details/83190252

使用UIActivityViewController集成系统分享功能

/**
 分享

 @param title 标题
 @param image 图标
 @param url 链接
 @param target r视图控制器
 @param complete 回调
 */
+ (void)shareWithTitle:(NSString *)title image:(UIImage *)image url:(NSString *)url target:(UIViewController *)target complete:(void (^)(BOOL isSuccess, UIActivityType type))complete
{
    // 分享内容
    NSString *shareTitle = title;
    UIImage *shareImage = image;
    NSURL *shareUrl = [NSURL URLWithString:url];
    NSArray *activityItemsArray = @[shareTitle, shareImage, shareUrl];
    //
    UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:activityItemsArray applicationActivities:nil];
    activityVC.modalInPopover = YES;
    // 禁用分享渠道
//    activityVC.excludedActivityTypes = @[UIActivityTypePrint, UIActivityTypeCopyToPasteboard, UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll, UIActivityTypeAddToReadingList, UIActivityTypePostToFlickr, UIActivityTypePostToVimeo, UIActivityTypeAirDrop, UIActivityTypeOpenInIBooks];
    
    //
    activityVC.completionWithItemsHandler = ^(UIActivityType  _Nullable activityType, BOOL completed, NSArray * _Nullable returnedItems, NSError * _Nullable activityError) {
        if (complete) {
            complete(completed, activityType);
        }
    };
    //
    [target presentViewController:activityVC animated:YES completion:nil];
}

猜你喜欢

转载自blog.csdn.net/potato512/article/details/83190252
今日推荐