将文本作为字符串共享给另一个应用

Dal*_*end 4 objective-c sharing ios

我有一个基本上看起来像这样的字符串:

成绩:

球员一:得分
球员两得分
球员三:得分

我想将此作为文本分享给WhatsApp,Facebook,iMessage等应用程序.最好的方法是什么?我曾尝试共享为.txt文件,但它在WhatsApp中作为文件而不是常规消息共享.

reb*_*o95 16

您可以使用自定义URL方案.Facebook和WhatsApp等应用程序通常都有自己的方案,您可以使用这些方案将数据发送到这些应用程序.请参阅WhatsApp的信息:链接

或者,您可以使用UIActivityViewController.这也支持其他数据类型,而不仅仅是字符串(请参阅此SO问题).

    NSString *textToShare = @"your text";
    UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:textToShare applicationActivities:nil];
    activityVC.excludedActivityTypes = @[UIActivityTypePrint, UIActivityTypeCopyToPasteboard, UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll]; //Exclude whichever aren't relevant
    [self presentViewController:activityVC animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

这是关于这种方法的一篇很好的博客文章:链接


小智 8

在swift中你可以这样做来共享一个字符串

var shareString = "Hello i am share string please share me!";

        var activityViewController: UIActivityViewController = UIActivityViewController(activityItems: [shareString], applicationActivities: nil);

        var currentViewController:UIViewController = UIApplication.sharedApplication().keyWindow!.rootViewController!

        currentViewController.presentViewController(activityViewController, animated: true, completion: nil);
Run Code Online (Sandbox Code Playgroud)