ich ein Webview mit Inline-URL-Links haben, die mit SFSafariViewController geöffnet werden, wie unten dargestellt:SFSafariViewController nicht wieder öffnen keine webview Inline-URL-Link
-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType {
if (inType == UIWebViewNavigationTypeLinkClicked) {
if ([SFSafariViewController class] != nil) {
NSString *inR = [[inRequest URL] absoluteString];
NSURL *inReq = [NSURL URLWithString:inR];
SFSafariViewController *safariVC = [[SFSafariViewController alloc] initWithURL:inReq entersReaderIfAvailable:YES];
safariVC.delegate = self;
[self presentViewController:safariVC animated:YES completion:nil];
} else {
[[UIApplication sharedApplication] openURL:[inRequest URL]];
return NO;
}
}
return YES;
}
#pragma mark - SFSafariViewController delegate methods
-(void)safariViewController:(SFSafariViewController *)controller didCompleteInitialLoad:(BOOL)didLoadSuccessfully {
// Load finished
}
-(void)safariViewControllerDidFinish:(SFSafariViewController *)controller {
// Done button pressed
NSLog(@"DONE PRESSED!!!");
}
Wenn ich drücken Sie die DONE-Taste, um meine Webview korrekt zurückgibt. Das Problem ist, dass, wenn ich wieder auf den gleichen Inline-Link drücken werde, es nicht mit SFSafariViewController geöffnet wird, sondern in Webview, was ich nicht wünsche. Ich habe versucht, Webview in SafariViewControllerDidFinish neu zu laden, aber ohne Erfolg.
Könnten Sie bitte helfen? Vielen Dank!
Wollen Sie nicht zurückkehren 'NO' am Ende Ihres' if ([SFSafariViewController Klasse ]! = nil) 'Block? – beyowulf
Es hat funktioniert! Vielen Dank für Ihre schnelle Hilfe. –