Ios 仅在Safari而不是webView上打开特定URL
我正在使用基于web的应用程序,它只包含一个webView,代码如下:Ios 仅在Safari而不是webView上打开特定URL,ios,objective-c,webview,safari,Ios,Objective C,Webview,Safari,我正在使用基于web的应用程序,它只包含一个webView,代码如下: - (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType { if ((navigationType == UIWebViewNavigationTypeLinkClicked )) {
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {
if ((navigationType == UIWebViewNavigationTypeLinkClicked )) {
[[UIApplication sharedApplication] openURL:[request URL]] ;
}
HUD = [[MBProgressHUD alloc] initWithView:self.view];
[self.view addSubview:HUD];
// Set determinate mode
[HUD show:YES];
//CAPTURE USER LINK-CLICK.
NSURL *url = [request URL];
NSString *urls= [url absoluteString];
NSString *code = [urls substringFromIndex: [urls length] - 1];
if ( [urls containsString:@".html"] && ![code isEqualToString:@"#"] ) {
_webView.hidden= YES;
}
这段代码将打开safari上的所有web视图,但我只需要打开safari上的特定URL
例如:
这必须在safari上打开,而所有其他页面都应该在应用程序内部的webView上打开。
任何帮助首先,您需要打开应在Safari而不是UIWebView中打开的特定URL。但没有任何条件满足您的要求 首先用所需的url检查您的
[请求url]
。如果两者都匹配,则在SFSafariViewController
中打开该url,而不是在openUrl
函数中打开。在else
条件下,您可以加载您不想在Safari中打开的[请求url]