ios 自帶UIActivityViewController分享

UIActivityViewController 使用大致使用步驟:

  • 1 設定分享的內容,比如:

      NSString *shareTitle = @"分享的標題";
      UIImage *shareImage = [UIImage imageNamed:@"me"];
      NSURL *shareUrl = [NSURL URLWithString:@"http://www.lxweimin.com/u/acdcce712303"];
      NSArray *activityItems = @[shareTitle,
                                 shareImage,
                                 shareUrl]; // 必須要提供url 才會顯示分享標簽否則只顯示圖片
    
  • 2 創建分享的控制器

    UIActivityViewController *activityVC = [[UIActivityViewController alloc] 
                                           initWithActivityItems:activityItems
                                           applicationActivities:nil];
    
  • 3 設定不想顯示的平臺和功能

    -(NSArray *)excludetypes{
      
      NSMutableArray *excludeTypesM =  [NSMutableArray arrayWithArray:@[//UIActivityTypePostToFacebook,
                                                                        UIActivityTypePostToTwitter,
                                                                        UIActivityTypePostToWeibo,
                                                                        UIActivityTypeMessage,
                                                                        UIActivityTypeMail,
                                                                        UIActivityTypePrint,
                                                                        UIActivityTypeCopyToPasteboard,
                                                                        UIActivityTypeAssignToContact,
                                                                        UIActivityTypeSaveToCameraRoll,
                                                                        UIActivityTypeAddToReadingList,
                                                                        UIActivityTypePostToFlickr,
                                                                        UIActivityTypePostToVimeo,
                                                                        UIActivityTypePostToTencentWeibo,
                                                                        UIActivityTypeAirDrop,
                                                                        UIActivityTypeOpenInIBooks]];
      
      if ([[UIDevice currentDevice].systemVersion floatValue] >= 11.0) {
          [excludeTypesM addObject:UIActivityTypeMarkupAsPDF];
      }
      
      return excludeTypesM;
    }
    activityVC.excludedActivityTypes = [self excludetypes];
    
  • 4 設置操作回調,用戶點擊 菜單按鈕后事件執行完成會回調這個block

    activityVC.completionWithItemsHandler = ^(UIActivityType  _Nullable   activityType, 
                                              BOOL completed,
                                              NSArray * _Nullable returnedItems,
                                              NSError * _Nullable activityError) {
          
          NSLog(@"activityType: %@,\n completed: %d,\n returnedItems:%@,\n activityError:%@",activityType,completed,returnedItems,activityError);
      };
    
    
  • 5 顯示分享菜單

[self presentViewController:activityVC animated:YES completion:nil];
Snip20180304_2.png

demo地址: https://github.com/TangChangTomYang/TestSystemShare.git

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容