UIActivityViewController包含而非排除活动类型

时间:2014-02-04 09:12:01

标签: ios iphone share uiactivityviewcontroller

我正在使用UIActivityViewController。对于特定的共享消息,我只想向用户提供UIActivityTypePostToFacebook(即仅通过facebook共享)。我意识到我可以使用excludedActivityTypes方法排除所有其他当前活动类型。

但是,我对这种方法的担心是,将来可能会出现更多的活动类型,因此我的应用程序会自动添加这些活动以供将来的操作系统版本使用。

因此,我想知道有没有办法只说明你想要出现的活动类型(即excludedActivityTypes方法的includedActivityTypes版本)

干杯,查理

2 个答案:

答案 0 :(得分:3)

如果您使用的是SLComposeViewController用户,则只向Facebook发送消息。在使用SLComposeViewController之前,您需要添加Social FrameWork。

if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook])
{
    SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
    [controller setInitialText:@"Using Facebook to share your Images"];
    [controller addImage:PresentImg];
    [self presentViewController:controller animated:YES completion:Nil];
}

答案 1 :(得分:1)

UIActivityViewController中,没有此类功能。有一点需要提醒你,你的恐惧是正确的。但是没有必要担心这一点。因为如果您的构建安装在设备中,即使它将使用新版本的IOS进行更新,也不会更新已存在的应用程序功能。那是在使用新版本的xcode更新您的应用之前(假设新的xcode具有您担心的功能),your app won't show more than this。否则,如果您想使用新的xcode进行更新,则必须在新版本中处理这种情况。