jjzjj

ios - Facebook UIActivityViewController 缺少取消和发布按钮

coder 2023-09-27 原文

当我的应用程序打开 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];

Twitter、电子邮件和 SMS 屏幕均按预期显示。 Facebook 是唯一有问题的。

一些其他注意事项:我注意到当我在此应用程序上打开 Facebook 共享时,状态栏变成黑色并带有白色文本。在我创建的另一个测试应用程序中,状态栏显示为灰色并带有黑色文本。不确定为什么/这指向什么,但可能是一个线索。

这个问题似乎是整个应用程序范围内的,因为我有 3 个可以调用共享的位置,并且它在所有 3 个实例中都发生了。

附上一张图片。 “To: Public”工具栏上方应该有一个导航栏。

如有任何想法,我们将不胜感激。

最佳答案

您可以根据需要 Conceal 导航栏。

因此,添加以下代码,如果您想在 UIActivityViewController 存在时显示导航,然后在 UIActivityViewController 存在时 Conceal 它> 被驳回:-

//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 

          }];

关于ios - Facebook UIActivityViewController 缺少取消和发布按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35076369/

有关ios - Facebook UIActivityViewController 缺少取消和发布按钮的更多相关文章

随机推荐