UIActivityViewController Gmail共享选项主题和正文设置两次?

时间:2015-09-18 07:30:07

标签: ios objective-c xcode uiactivityviewcontroller

我正在使用UIActivityViewController来显示共享选项。除非用户选择Gmail共享选项,否则一切正常。 在我选择Gmail的列表中,主题和正文设置为两次

NSString *socialUrl = [NSString stringWithFormat:@"https://www.youtube.com/watch?v=%@",videoId];
       NSURL *url = [NSURL URLWithString:socialUrl];
        NSString *strText = @"Shared via TopCod";
        NSString *url1 = @"http://www.topcod.tv/";

        NSArray *ary =[[NSArray alloc]initWithObjects:url,strText,url1,nil];
    UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:ary applicationActivities:nil];
    NSArray *excludeActivities = @[UIActivityTypePostToWeibo,
                                    UIActivityTypeMessage,
                                    UIActivityTypeMail,
                                    UIActivityTypePrint,
                                    UIActivityTypeCopyToPasteboard,
                                    UIActivityTypeAssignToContact,
                                    UIActivityTypeSaveToCameraRoll,
                                    UIActivityTypeAddToReadingList,
                                    UIActivityTypePostToFlickr,
                                    UIActivityTypePostToVimeo,
                                    UIActivityTypePostToTencentWeibo,
                                    UIActivityTypeAirDrop,
                                    ];
    [activityViewController setValue:strText forKey:@"subject"];
        activityViewController.excludedActivityTypes = excludeActivities;
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
        [self presentViewController:activityViewController animated:YES completion:nil];

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码完成工作。在这里,您可以使用单个字符串而不是使用两个单独的字符串,并使用\n分隔符添加新行。

NSString *socialUrl = [NSString stringWithFormat:@"https://www.youtube.com/watch?v=%@",videoId];
       NSURL *url = [NSURL URLWithString:socialUrl];
        NSString *strText = @"Shared via TopCod\n\nhttp://www.topcod.tv/";


        NSArray *ary =[[NSArray alloc]initWithObjects:url,strText,nil];
    UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:ary applicationActivities:nil];
    NSArray *excludeActivities = @[UIActivityTypePostToWeibo,
                                    UIActivityTypeMessage,
                                    UIActivityTypeMail,
                                    UIActivityTypePrint,
                                    UIActivityTypeCopyToPasteboard,
                                    UIActivityTypeAssignToContact,
                                    UIActivityTypeSaveToCameraRoll,
                                    UIActivityTypeAddToReadingList,
                                    UIActivityTypePostToFlickr,
                                    UIActivityTypePostToVimeo,
                                    UIActivityTypePostToTencentWeibo,
                                    UIActivityTypeAirDrop,
                                    ];
    [activityViewController setValue:strText forKey:@"subject"];
        activityViewController.excludedActivityTypes = excludeActivities;
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
        [self presentViewController:activityViewController animated:YES completion:nil];

希望这有帮助。