Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Xcode网络视图。开放目标="_“空白”;Safari中的链接_Ios_Objective C_Xcode_Uiwebview - Fatal编程技术网

Ios Xcode网络视图。开放目标="_“空白”;Safari中的链接

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

我有一个用于iOS的小应用程序,它使用了WebView。我需要包含target=“\u blank”的链接才能在Safari中打开

我找到了解决办法。但这对我不起作用

所有链接现在都在Safari中打开,所有包含“?openInSafari=true”的链接也都打开了。但是外部(可下载)文件,如PDFWebView中打开

我不明白为什么这个条件不起作用

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