如何同时发送文本(或URL)和图像与AirDrop
我想与AirDrop共享文本(或URL)和图像,它似乎只发送图像。它可以与其他共享活动(Facebook,Twitter,邮件,消息等)正常工作。是否有可能与AirDrop共享两个项目? 这里是我如何使用UIActivityViewController:如何同时发送文本(或URL)和图像与AirDrop
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[self.activityItem, self.attachedImage] applicationActivities:nil];
self.attachedImage是的UIImage和self.activityItem是UIActivityItemProvider的子类,可以在委托方法返回不同的文本,不同的活动类型
- (id)activityViewController:(UIActivityViewController *)activityViewController itemForActivityType:(NSString *)activityType
不任何人有想法?谢谢!
编辑:
我也试过没有子UIActivityItemProvider并直接传递一些文字。没有工作。
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[@"some text", self.attachedImage] applicationActivities:nil];
作为一个说明,它的工作原理,如果我想共享多个文本或多个图像(的UIImage):
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[@"text 1", @"text 2"] applicationActivities:nil];
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[attachedImage1, attachedImage2] applicationActivities:nil];
发布了同样的问题对苹果开发论坛:https://devforums.apple.com/message/937697#937697
得到了这样的回答:
目前是不可能的。 AirDrop只允许您发送单套 物品。如果您尝试将其发送到您自己的应用程序的实例 另一侧,则可以创建一个文件格式(一个 捆绑包/包可能适合此处),并将所有不同类型的文件嵌入到该文件中。然后在接收端,您可以从文件中提取不同的类型。
试试这个代码
NSString *text= @"text to share";
CustomActivityItemProvider *textToShare = [[CustomActivityItemProvider alloc]
initWithStandardText:text];
NSArray *activityItems = @[textToShare,self.attachedImage];
使用activityItems
阵列中的活动视图控制器。
这就是我在做什么。我有一个UIActivityItemProvider的子类,它返回一个文本。然后,我将该项传递给initWithActivityItems中的UIActivityViewController:applicationActivities:与图像一起。 – Silvia
使用字符串唐,UIActivity指标的T选用子... –
@C_X已经试过了,也不行 – Silvia
是什么?你尝试过...更新代码... –