gpt4 book ai didi

ios - 我的应用中缺少某些 UIActivityViewController 服务

转载 作者:可可西里 更新时间:2023-11-01 05:36:25 25 4
gpt4 key购买 nike

我已经在我的应用程序中实现了 UIActivityViewController,并且可以成功地共享字符串和图像。但是,我注意到当您在 iOS 照片应用程序中共享图像时,有些服务不会出现在我的应用程序中。即打印、用作墙纸、分配给联系人和照片流。我的应用程序能够很好地使用邮件、消息、Facebook、Twitter 和 Copy。

我在想:

1.) 这些额外服务已作为自定义服务在照片应用中使用 UIActivityItemProviderUIActivityItemSource 等实现。

2.) 我提供的数据格式不正确,无法用于这些服务。

我已经通读了几次文档,但似乎没有看到任何内容。

编辑:按要求显示代码:

#define SM_SHARE_IMAGE_AND_STRING 1

-(void)actionToolbarViewControllerUserTappedShareButton:(SMActionToolbarViewController*)sender{
// Reposition anchor view for UIPopoverController to point at
[self repositionAnchorViewToButtonFrame:self.actionToolbarViewController.shareButtonFrame];

// Asynch download of image
[SMUtility downloadAsset:self.selectedAsset completion:^(UIImage *image) {
// Create image source
SMActivitySource *activityImageSource = [[SMActivitySource alloc]initWithImage:image];
#if defined(SM_SHARE_IMAGE_AND_STRING)
// Create string source
NSString *assetsString = [SMUtility assetsString:[NSArray arrayWithObject:self.selectedAsset]];
SMActivitySource *activityStringSource = [[SMActivitySource alloc]initWithString:assetsString];

// Present UIActiviyViewController within an UIPopoverController
NSArray *items = [@[activityImageSource, activityStringSource]mutableCopy];
#else
NSArray *items = [@[activityImageSource]mutableCopy];
#endif

UIActivityViewController *activityViewController = [[UIActivityViewController alloc]initWithActivityItems:items applicationActivities:nil];
[activityViewController setCompletionHandler:^(NSString *activityType, BOOL completed){
[SMMixPanel eventSharePhotoMethod:@"Share"];
}];
self.buttonPopoverController = [[UIPopoverController alloc] initWithContentViewController:activityViewController];
[self.buttonPopoverController presentPopoverFromRect:self.anchorView.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}];
}

最佳答案

  1. 打印和分配给联系人事件是 UIActivityViewController 显示的标准事件,只要您提供正确的数据即可。
  2. 您必须为“分配给联系人”事件提供一个UIImage。请参阅 UIActivityTypeAssignToContact 的文档。请参阅 UIActivityTypePrint 的文档,了解它接受的内容的详细信息。

“用作墙纸”似乎是一个仅在照片应用程序中显示的自定义事件。

关于ios - 我的应用中缺少某些 UIActivityViewController 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16570838/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com