Facebook UIActivityViewController缺少取消和发布按钮

Chr*_*ris 4 xcode facebook ios uiactivityviewcontroller

当我的应用程序打开Facebook时UIActivityViewController,Facebook屏幕顶部没有导航栏,没有"取消"或"发布"按钮 - 退出屏幕的唯一方法就是杀死应用程序.我看到的其他应用程序在Facebook屏幕的顶部有一个额外的导航栏,其中包含"取消"和"发布"按钮.

这是我正在使用的代码:

        NSURL *url = [NSURL URLWithString:@"http://www.mywebsite.com"];
        NSArray *activityItems = @[url];

        // Put together the UIActivityViewController
        UIActivityViewController *activityVC = [[UIActivityViewController alloc]
                                                initWithActivityItems:activityItems
                                                applicationActivities:nil];

        activityVC.excludedActivityTypes = @[UIActivityTypePrint,
                                             UIActivityTypeCopyToPasteboard,
                                             UIActivityTypeAssignToContact,
                                             UIActivityTypeSaveToCameraRoll,
                                             UIActivityTypeAirDrop,
                                             UIActivityTypePostToVimeo,
                                             UIActivityTypePostToFlickr,
                                             UIActivityTypeAddToReadingList];

        // Present the UIActivityViewController
        [self presentViewController:activityVC
                           animated:YES
                         completion:nil];
Run Code Online (Sandbox Code Playgroud)

Twitter,电子邮件和短信屏幕都按预期显示.Facebook是唯一一个遇到问题的人.

其他一些注意事项:我注意到当我在这个应用程序上打开Facebook Share时,状态栏变为黑色,带有白色文本.在我创建的另一个测试应用程序上,状态栏看起来呈灰色,带有黑色文本.不确定为什么/这指向什么,但可能是一个线索.

这个问题似乎是应用程序范围的,因为我有3个点可以调用共享,并且它发生在所有3个实例中.

附加图像."To:Public"工具栏上方应该有一个导航栏.

在此输入图像描述

任何想法,将不胜感激.

Viz*_*llx 5

您可以根据需要隐藏导航栏.

因此,如果要在出现时显示导航,然后在解除时隐藏它,请添加以下代码: -UIActivityViewControllerUIActivityViewController

//this will be called when the UIActivityViewController  will be dismissed, so we are hiding the navigation

[activityVC setCompletionHandler:^(NSString *activityType, BOOL completed) {
                [[UINavigationBar appearance] setHidden:YES];


        }];



//this will be called when the UIActivityViewController  will be shown, so we are enabling the navigation mean unhiding it.

[self presentViewController:activityVC animated:YES completion:^{
                 [[UINavigationBar appearance] setHidden:NO]

                  //you can also add code to customize status bar 

          }];
Run Code Online (Sandbox Code Playgroud)