2

我有一个简单的应用程序,它在应用程序中加载网页,在 iOS 8 上,我使用的是自定义UIWebViewController调用VideoWebViewController,而对于 iOS 9,我正在使用SFSafariViewController. 在 中VideoWebViewController,我有以下在被调用时UIActivityViewController被调用的方法:

NSString *currentURL = self.webView.request.URL.absoluteString;
// This method gets called when the user hits the right bar button item; the share sheet.
NSURL *facebook = [[NSURL alloc] initWithString:@"http://www.facebook.com"];
NSURL *twitter = [[NSURL alloc] initWithString:@"http://twitter.com"];
NSString *forwardedString = [[NSString alloc] initWithFormat:@"Check this out %@, %@", facebook, twitter];
UIActivityViewController *activityViewController = nil;
activityViewController = [[UIActivityViewController alloc] initWithActivityItems:[NSArray arrayWithObjects:forwardedString, nil] applicationActivities:nil];

当我打电话给 时VideoWebViewController,我是这样做的:

VideoWebViewController *video = [[VideoWebViewController alloc] init];
        UINavigationController *navigation = [[UINavigationController alloc] initWithRootViewController:video];
        [self presentViewController:navigation animated:YES completion:nil];
        [video setSelectedVideo:@"https://www.youtube.com"];

当我打电话给 时SFSafariViewController,我是这样做的:

SFSafariViewController *safariVC = [[SFSafariViewController alloc] initWithURL:[NSURL URLWithString:@"https://www.youtube.com/"]entersReaderIfAvailable:NO];
safariVC.delegate = self;
[self presentViewController:safariVC animated:YES completion:nil];

问题

那么我该如何自定义在UIActivityViewController中调用时的文本SFSafariViewController呢?很容易做到这一点,VideoWebViewController因为我正在设置一个自定义子类,但我不确定是否有办法做到这一点SFSafariViewController?当用户在 中选择 Share Sheet (UIActivityViewController) 时SFSafariViewController,我只想添加一些自定义文本。

更新

我已经创建了 SFSafariViewController 的自定义子类,但是我看不到调用用户选择 ShareSheet (UIActivityViewController) 时发生的方法的方法。

对此的任何指导将不胜感激。

更新

看起来这不可能,所以我为此与 Apple 创建了一个错误报告:https ://bugreport.apple.com/problem/viewproblem

4

0 回答 0