【问题标题】:Opening Only Specific URLS on Safari instead of webView在 Safari 而不是 webView 上仅打开特定 URL
【发布时间】:2017-03-06 09:41:54
【问题描述】:

我正在开发一个基于 Web 的应用程序,它只包含一个 webView,代码如下:

 - (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 上的所有网络视图,但我只需要在 safari 上打开特定 URL 例如 : http://xxxx/residential/ 这必须在 safari 上打开,而所有其他页面应在应用程序内的 webView 上打开。 任何帮助

【问题讨论】:

    标签: ios objective-c webview safari


    【解决方案1】:

    首先,您要打开应该在 Safari 而不是 UIWebView 中打开的特定 url。但是没有任何条件可以满足您的要求。

    首先使用您想要的网址检查您的[request url]。如果两者都匹配,则在 SFSafariViewController 而不是 openUrl 函数中打开该 URL。在else 条件下,您可以加载您不想在Safari 中打开的[request url]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-02-09
      • 2012-12-02
      • 1970-01-01
      • 1970-01-01
      • 2013-01-07
      • 1970-01-01
      • 2022-10-20
      相关资源
      最近更新 更多