2017-04-20 32 views
1

활동 항목에 텍스트가 있지만 지금은 WhatsApp 또는 Facebook에 공유합니다.이 방법은 각 앱마다 동일한 텍스트를 공유합니다. 각 앱마다 다른 텍스트를 공유 할 수 있습니까?UIActivityViewController가 WhatsApp 또는 Facebook에 다른 텍스트를 선택했습니다.

- (void)share { 
    NSString *text = @"share test"; 

    NSArray * activityItems = @[[NSString stringWithFormat:@"%@", text], [NSURL URLWithString:@"http://www.test.co"]]; 
    NSArray * applicationActivities = nil; 
    NSArray * excludeActivities = @[UIActivityTypeAssignToContact, UIActivityTypeCopyToPasteboard, UIActivityTypePostToWeibo, UIActivityTypePrint, UIActivityTypeMessage]; 

    UIActivityViewController * activityController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:applicationActivities]; 
    activityController.excludedActivityTypes = excludeActivities; 

    [self presentViewController:activityController animated:YES completion:nil]; 

    [activityController setCompletionWithItemsHandler:^(NSString *activityType, BOOL completed, NSArray *returnedItems, NSError *activityError) { 
     NSLog(@"The setCompletionWithItemsHandler completed = %i", completed); 

     if (completed) { 
      NSLog(@"The selected activity was %@", activityType); 

      if ([activityType isEqualToString:UIActivityTypeMail]) { 
       NSLog(@"Mail sended"); 
      } else if ([activityType isEqualToString:UIActivityTypePostToTwitter]) { 
       NSLog(@"Post on twitter, ok!"); 
      } else if ([activityType isEqualToString:UIActivityTypePostToFacebook]) { 
       NSLog(@"Post on facebook, ok!"); 
      } else if ([activityType isEqualToString:UIActivityTypeMessage]) { 
       NSLog(@"SMS sended!"); 
      } 
     } 
    }]; 
} 

답변

2

짧은 답변 : 제

하지만 당신은 URL 방식으로 열린 응용 프로그램을 사용하는 응용 프로그램에 매개 변수를 전달할 수 있습니다. 이 메서드를 사용할 때는 사용자 지정 UI를 사용해야하며 UIActivityViewController를 사용할 수 없습니다. 당신이 좋아하는 여러 개의 버튼을 갖고 싶어 (내가 아는 한)

그래서, 그것은 가능합니다 : 는 "공유 WhatsApp에와" "공유 페이스 북" 등

+0

덕분에, 사용자는 문제를 UI 나를 위해. –