从webView打开UIViewController

时间:2011-09-14 23:22:44

标签: uiwebview modalviewcontroller navigationcontroller

我有一个应用程序,它将webview添加为主UIViewController的子视图。我想拦截在此webview中单击的链接,并在新的UIViewController中打开它们(作为模态视图或navigationController)。 对于这个新的UIViewController,我正在使用https://github.com/samvermette/SVWebViewController这是一个内联浏览器类,并且运行良好。

我能够在webView中拦截来自该webview的点击:shouldStartLoadWithRequest:navigationType。但我的问题是它无法打开新的UIViewController(SVWebViewController)。以下是拦截webView中的点击并打开它的代码:

- (BOOL) webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest    *)inRequest navigationType:(UIWebViewNavigationType)inType {

  if(inType == UIWebViewNavigationTypeLinkClicked) {

    NSURL *url = [inRequest URL];

    NSString *fname = [url absoluteString];

    SVWebViewController *webViewController = [[SVWebViewController alloc]  initWithAddress:fname];

    [self presentModalViewController:webViewController animated:YES];

    [webViewController release];

    return NO;

  }

  return YES;

}

在SVWebViewController中没有问题,当我从主UIView调用它时它可以正常工作,但是当我用它来打开来自webView的点击时它没有。

感谢您的帮助!!

0 个答案:

没有答案