如何获取UIActivityViewController的所有应用程序活动?

4

如何获取设备中安装的所有applicationActivitiesNSArray

- (id)initWithActivityItems:(NSArray *)activityItems applicationActivities:(NSArray *)applicationActivities;

我想删除一两个项目并显示完整列表的其余部分。

你是否在寻找 UIActivityViewControllerexcludedActivityTypes 属性? - iDev
https://dev59.com/GWcs5IYBdhLWcg3wmlIK - Srikanth
2个回答

1

活动字符串在UIActivity类参考UIActivity.ActivityType的文档底部列出。

它们被列为UIActivityTypePostToFacebook、UIActivityTypePostToTwitter等字符串,实际上是在UIActivity.h中定义的。

尝试这样做:

NSLog(@"%@", UIActivityTypePostToFacebook);

然后您可以将这些字符串进行比较,以显示特定于活动类型的用户消息。

0

不确定如何获取所有applicationActivities列表。如果您想排除某些活动类型,则可以使用UIActivityViewControllerexcludedActivityTypes属性。根据文档

此属性包含一个字符串数组,其中每个字符串对应于您在UIActivity对象的activityType参数中找到的值。您指定的每个字符串表示您不想向用户显示的服务。您可能会排除您认为不适合所提供内容的服务。例如,您可能不希望允许用户打印特定图像。如果此属性的值为nil,则不会排除任何服务。

此属性的默认值为nil。


10
这个“答案”字面上开头说“我不知道答案”。 - Andrew Theken
公正地说,这个问题有两个部分:1)获取所有的applicationActivities;2)移除一个或两个activities。由于这个答案回答了第二部分,并且ohho将其选为正确答案,我会说这实际上是这个问题的正确答案。所以不确定为什么在这里发表了上述评论。 - adev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接