Ios Xcode网络视图。开放目标="_“空白”;Safari中的链接
我有一个用于iOS的小应用程序,它使用了WebView。我需要包含target=“\u blank”的链接才能在Safari中打开 我找到了解决办法。但这对我不起作用 所有链接现在都在Safari中打开,所有包含“?openInSafari=true”的链接也都打开了。但是外部(可下载)文件,如PDF在WebView中打开 我不明白为什么这个条件不起作用Ios Xcode网络视图。开放目标="_“空白”;Safari中的链接,ios,objective-c,xcode,uiwebview,Ios,Objective C,Xcode,Uiwebview,我有一个用于iOS的小应用程序,它使用了WebView。我需要包含target=“\u blank”的链接才能在Safari中打开 我找到了解决办法。但这对我不起作用 所有链接现在都在Safari中打开,所有包含“?openInSafari=true”的链接也都打开了。但是外部(可下载)文件,如PDF在WebView中打开 我不明白为什么这个条件不起作用 - (BOOL) webView:(UIWebView *)webView shouldStartLoadWithRequest: (NSU
- (BOOL) webView:(UIWebView *)webView shouldStartLoadWithRequest: (NSURLRequest *)request navigationType: (UIWebViewNavigationType)navigationType {
if (navigationType == UIWebViewNavigationTypeLinkClicked) {
NSURL *url = [request URL];
NSString *string = [url query];
if ([string rangeOfString: @"openInSafari=true"].location != NSNotFound){
[[UIApplication sharedApplication] openURL: url];
NSLog(@"Open in Safari");
return NO;
}
}
NSLog(@"Open in WebView");
return YES;
}
已编辑
当我点击包含“?openInSafari=true”的链接时,我会得到“openin Safari openInSafari=true”
当我点击普通链接时,我会看到“在Safari中打开(空)”
当我点击PDF文件的可下载链接时,我会看到“在WebView产品中打开”\u id=50&download\u id=21”
当我单击以直接链接到PDF文件时,我会得到“在Safari中打开(null)”请共享单击PDF链接时得到的字符串。如果([string rangeOfString:@“openInSafari=true”].location!=NSNotFound)使用此代码替换此代码,如果(string.Length>0)它可以工作。但是这个解决方案不适合我。我有像index.php?route=account/address/add这样的链接,这些链接在中打开Safari@SurbhiGarg我更新了我的问题,所以你也需要为外部链接设置一个单独的条件,因为它们将有下载id