UIView中的UIWebView需要链接才能在浏览器中打开

时间:2010-08-27 19:56:38

标签: iphone uiview uiviewcontroller uiwebview

所以我有一个应用程序,不是一个webapp,而是更多使用UIViewControllers和UIViews用于大多数屏幕。在一个特定的控制器上,我有一个UIWebView控件,它只占用UIViewController屏幕空间的一小部分,我将Web服务中的html作为字符串加载。

[self.webView loadHTMLString:marketingBlurb baseURL:nil];

我想知道的是,这个字符串中的html链接是否可以在浏览器上打开而不是在我的应用程序中的UIWebView中?我怎样才能做到这一点??这甚至可能吗?

1 个答案:

答案 0 :(得分:4)

将webview的委托设置为 self ,并使用 webView截取所有链接:shouldStartLoadWithRequest:navigationType:

然后,您可以调用[UIApplication openURL]打开Safari。

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
  if (navigationType == UIWebViewNavigationTypeLinkClicked) {
    [[UIApplication sharedApplication] openURL:[request URL]];
    return NO;
  }

  return YES;
}

我没有测试这段代码,但它会让你开始。